[INFO] cloning repository https://github.com/Darxoon/vivibin
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Darxoon/vivibin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarxoon%2Fvivibin", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarxoon%2Fvivibin'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 44225e7ba3e533a61374a9c43985c73d971c3c44
[INFO] checking Darxoon/vivibin against master#04ff05c9c0cfbca33115c5f1b8bb20a66a54b799 for pr-147834
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FDarxoon%2Fvivibin" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Darxoon/vivibin
[INFO] finished tweaking git repo https://github.com/Darxoon/vivibin
[INFO] tweaked toml for git repo https://github.com/Darxoon/vivibin written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Darxoon/vivibin on toolchain 04ff05c9c0cfbca33115c5f1b8bb20a66a54b799
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Darxoon/vivibin 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" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 9eee24662b7932255fb25497b09cb61231ba71e67aa9557863809d8a28b37b9a
[INFO] running `Command { std: "docker" "start" "-a" "9eee24662b7932255fb25497b09cb61231ba71e67aa9557863809d8a28b37b9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "9eee24662b7932255fb25497b09cb61231ba71e67aa9557863809d8a28b37b9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9eee24662b7932255fb25497b09cb61231ba71e67aa9557863809d8a28b37b9a", kill_on_drop: false }`
[INFO] [stdout] 9eee24662b7932255fb25497b09cb61231ba71e67aa9557863809d8a28b37b9a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+04ff05c9c0cfbca33115c5f1b8bb20a66a54b799" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7a7316edead952773e8237ad32645ac805060467f0c52a5f84fd5af8084d656e
[INFO] running `Command { std: "docker" "start" "-a" "7a7316edead952773e8237ad32645ac805060467f0c52a5f84fd5af8084d656e", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.41
[INFO] [stderr]     Checking unicode-ident v1.0.19
[INFO] [stderr]     Checking array-init v2.1.0
[INFO] [stderr]     Checking proc-macro2 v1.0.101
[INFO] [stderr]    Compiling syn v2.0.106
[INFO] [stderr]     Checking vivibin_derive v0.1.0 (/opt/rustwide/workdir/vivibin_derive)
[INFO] [stderr]     Checking vivibin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:227:33
[INFO] [stdout]     |
[INFO] [stdout] 221 |     fn write_box_of<W: WriteCtx>(
[INFO] [stdout]     |                     - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 227 |             write_content(self, ctx)
[INFO] [stdout]     |             -------------       ^^^ expected `&mut W`, found `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut W`
[INFO] [stdout]                found mutable reference `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout] note: type parameter defined here
[INFO] [stdout]    --> src/main.rs:224:24
[INFO] [stdout]     |
[INFO] [stdout] 224 |         write_content: impl FnOnce(&mut Self, &mut W) -> Result<()>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 221 |     fn write_box_of<W: WriteCtx<InnerCtx<'_> = W>>(
[INFO] [stdout]     |                                ++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<FormatCgfx<C> as WriteDomain>::Cat == <W as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:241:31
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl<C: HeapCategory> CanWriteSlice for FormatCgfx<C> {
[INFO] [stdout]     |      - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 241 |         (values.len() as u32).to_writer(ctx, self)?;
[INFO] [stdout]     |                               ^^^^^^^^^ type mismatch resolving `<FormatCgfx<C> as WriteDomain>::Cat == <W as WriteCtx>::Cat`
[INFO] [stdout]     |
[INFO] [stdout] note: expected this to be `<W as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:186:16
[INFO] [stdout]     |
[INFO] [stdout] 186 |     type Cat = C;
[INFO] [stdout]     |                ^
[INFO] [stdout]     = note: expected associated type `<W as WriteCtx>::Cat`
[INFO] [stdout]                 found type parameter `C`
[INFO] [stdout]     = note: you might be missing a type parameter or trait bound
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:244:37
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn write_slice_of<T: 'static, W: WriteCtx>(
[INFO] [stdout]     |                                   - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 244 |                 write_content(self, ctx, value)?;
[INFO] [stdout]     |                 -------------       ^^^ expected `&mut W`, found `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut W`
[INFO] [stdout]                found mutable reference `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout] note: type parameter defined here
[INFO] [stdout]    --> src/main.rs:239:24
[INFO] [stdout]     |
[INFO] [stdout] 239 |         write_content: impl Fn(&mut Self, &mut W, &T) -> Result<()>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn write_slice_of<T: 'static, W: WriteCtx<InnerCtx<'_> = W>>(
[INFO] [stdout]     |                                              ++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:290:31
[INFO] [stdout]     |
[INFO] [stdout] 290 |         domain.write_fallback(ctx, &self.id)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:291:31
[INFO] [stdout]     |
[INFO] [stdout] 291 |         domain.write_fallback(ctx, &self.visible)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<D as WriteDomain>::Cat == <impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:297:18
[INFO] [stdout]     |
[INFO] [stdout] 297 |             self.to_writer_unboxed(ctx, domain)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^ expected `vivibin::WriteCtx::Cat`, found `vivibin::WriteDomain::Cat`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]                found associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:353:22
[INFO] [stdout]     |
[INFO] [stdout] 353 |         domain.write(ctx, &self.name)?;
[INFO] [stdout]     |                ----- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `vivibin::CanWrite::write`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:326:49
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn write(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()>;
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^ required by this bound in `CanWrite::write`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:354:39
[INFO] [stdout]     |
[INFO] [stdout] 354 |         domain.write_fallback::<Vec3>(ctx, &self.position)?;
[INFO] [stdout]     |                --------------         ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:355:39
[INFO] [stdout]     |
[INFO] [stdout] 355 |         domain.write_fallback::<bool>(ctx, &self.is_visible)?;
[INFO] [stdout]     |                --------------         ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:356:37
[INFO] [stdout]     |
[INFO] [stdout] 356 |         domain.write_slice_fallback(ctx, &self.item_ids)?;
[INFO] [stdout]     |                -------------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_slice_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:273:93
[INFO] [stdout]     |
[INFO] [stdout] 273 |     fn write_slice_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, values: &[T]) -> Result<()> {
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^^^^^^ required by this bound in `WriteSliceFallbackExt::write_slice_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         domain.write_fallback(ctx, &self.child)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0271, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0271`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `vivibin` (bin "vivibin" test) due to 11 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:227:33
[INFO] [stdout]     |
[INFO] [stdout] 221 |     fn write_box_of<W: WriteCtx>(
[INFO] [stdout]     |                     - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 227 |             write_content(self, ctx)
[INFO] [stdout]     |             -------------       ^^^ expected `&mut W`, found `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout]     |             |
[INFO] [stdout]     |             arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut W`
[INFO] [stdout]                found mutable reference `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout] note: type parameter defined here
[INFO] [stdout]    --> src/main.rs:224:24
[INFO] [stdout]     |
[INFO] [stdout] 224 |         write_content: impl FnOnce(&mut Self, &mut W) -> Result<()>
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 221 |     fn write_box_of<W: WriteCtx<InnerCtx<'_> = W>>(
[INFO] [stdout]     |                                ++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<FormatCgfx<C> as WriteDomain>::Cat == <W as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:241:31
[INFO] [stdout]     |
[INFO] [stdout] 234 | impl<C: HeapCategory> CanWriteSlice for FormatCgfx<C> {
[INFO] [stdout]     |      - found this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 241 |         (values.len() as u32).to_writer(ctx, self)?;
[INFO] [stdout]     |                               ^^^^^^^^^ type mismatch resolving `<FormatCgfx<C> as WriteDomain>::Cat == <W as WriteCtx>::Cat`
[INFO] [stdout]     |
[INFO] [stdout] note: expected this to be `<W as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:186:16
[INFO] [stdout]     |
[INFO] [stdout] 186 |     type Cat = C;
[INFO] [stdout]     |                ^
[INFO] [stdout]     = note: expected associated type `<W as WriteCtx>::Cat`
[INFO] [stdout]                 found type parameter `C`
[INFO] [stdout]     = note: you might be missing a type parameter or trait bound
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> src/main.rs:244:37
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn write_slice_of<T: 'static, W: WriteCtx>(
[INFO] [stdout]     |                                   - expected this type parameter
[INFO] [stdout] ...
[INFO] [stdout] 244 |                 write_content(self, ctx, value)?;
[INFO] [stdout]     |                 -------------       ^^^ expected `&mut W`, found `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 arguments to this function are incorrect
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected mutable reference `&mut W`
[INFO] [stdout]                found mutable reference `&mut <W as WriteCtx>::InnerCtx<'_>`
[INFO] [stdout] note: type parameter defined here
[INFO] [stdout]    --> src/main.rs:239:24
[INFO] [stdout]     |
[INFO] [stdout] 239 |         write_content: impl Fn(&mut Self, &mut W, &T) -> Result<()>,
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] help: consider further restricting this bound
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn write_slice_of<T: 'static, W: WriteCtx<InnerCtx<'_> = W>>(
[INFO] [stdout]     |                                              ++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:290:31
[INFO] [stdout]     |
[INFO] [stdout] 290 |         domain.write_fallback(ctx, &self.id)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:291:31
[INFO] [stdout]     |
[INFO] [stdout] 291 |         domain.write_fallback(ctx, &self.visible)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<D as WriteDomain>::Cat == <impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]    --> src/main.rs:297:18
[INFO] [stdout]     |
[INFO] [stdout] 297 |             self.to_writer_unboxed(ctx, domain)
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^ expected `vivibin::WriteCtx::Cat`, found `vivibin::WriteDomain::Cat`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]                found associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:353:22
[INFO] [stdout]     |
[INFO] [stdout] 353 |         domain.write(ctx, &self.name)?;
[INFO] [stdout]     |                ----- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `vivibin::CanWrite::write`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:326:49
[INFO] [stdout]     |
[INFO] [stdout] 326 |     fn write(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()>;
[INFO] [stdout]     |                                                 ^^^^^^^^^^^^^^^ required by this bound in `CanWrite::write`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:354:39
[INFO] [stdout]     |
[INFO] [stdout] 354 |         domain.write_fallback::<Vec3>(ctx, &self.position)?;
[INFO] [stdout]     |                --------------         ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:355:39
[INFO] [stdout]     |
[INFO] [stdout] 355 |         domain.write_fallback::<bool>(ctx, &self.is_visible)?;
[INFO] [stdout]     |                --------------         ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:356:37
[INFO] [stdout]     |
[INFO] [stdout] 356 |         domain.write_slice_fallback(ctx, &self.item_ids)?;
[INFO] [stdout]     |                -------------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_slice_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:273:93
[INFO] [stdout]     |
[INFO] [stdout] 273 |     fn write_slice_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, values: &[T]) -> Result<()> {
[INFO] [stdout]     |                                                                                             ^^^^^^^^^^^^^^^ required by this bound in `WriteSliceFallbackExt::write_slice_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0271]: type mismatch resolving `<impl WriteCtx as WriteCtx>::Cat == <D as WriteDomain>::Cat`
[INFO] [stdout]    --> src/main.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         domain.write_fallback(ctx, &self.child)?;
[INFO] [stdout]     |                -------------- ^^^ expected `vivibin::WriteDomain::Cat`, found `vivibin::WriteCtx::Cat`
[INFO] [stdout]     |                |
[INFO] [stdout]     |                required by a bound introduced by this call
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected associated type `<D as WriteDomain>::Cat`
[INFO] [stdout]                found associated type `<impl WriteCtx as WriteCtx>::Cat`
[INFO] [stdout]     = note: an associated type was expected, but a different one was found
[INFO] [stdout] note: required by a bound in `write_fallback`
[INFO] [stdout]    --> /opt/rustwide/workdir/src/lib.rs:222:87
[INFO] [stdout]     |
[INFO] [stdout] 222 |     fn write_fallback<T: Writable<Self> + 'static>(&mut self, ctx: &mut impl WriteCtx<Cat = Self::Cat>, value: &T) -> Result<()> {
[INFO] [stdout]     |                                                                                       ^^^^^^^^^^^^^^^ required by this bound in `WriteDomainExt::write_fallback`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0271, E0308.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0271`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `vivibin` (bin "vivibin") due to 11 previous errors
[INFO] running `Command { std: "docker" "inspect" "7a7316edead952773e8237ad32645ac805060467f0c52a5f84fd5af8084d656e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7a7316edead952773e8237ad32645ac805060467f0c52a5f84fd5af8084d656e", kill_on_drop: false }`
[INFO] [stdout] 7a7316edead952773e8237ad32645ac805060467f0c52a5f84fd5af8084d656e
