[INFO] cloning repository https://github.com/ferrite-rs/ferrite-tutorial [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ferrite-rs/ferrite-tutorial" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fferrite-rs%2Fferrite-tutorial", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fferrite-rs%2Fferrite-tutorial'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] a84f78984c4130a657ff7cbcae51e86e32764446 [INFO] checking ferrite-rs/ferrite-tutorial against try#8ea250bdb76176ecb0225baa34aa634b024ae0e2 for pr-101692 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fferrite-rs%2Fferrite-tutorial" "/workspace/builds/worker-2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ferrite-rs/ferrite-tutorial on toolchain 8ea250bdb76176ecb0225baa34aa634b024ae0e2 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ferrite-rs/ferrite-tutorial [INFO] finished tweaking git repo https://github.com/ferrite-rs/ferrite-tutorial [INFO] tweaked toml for git repo https://github.com/ferrite-rs/ferrite-tutorial written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/ferrite-rs/ferrite-tutorial already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] dbbfb4c6821e07e2882e20c628014ce28af72f906d4e35b5a085bc6f9de749da [INFO] running `Command { std: "docker" "start" "-a" "dbbfb4c6821e07e2882e20c628014ce28af72f906d4e35b5a085bc6f9de749da", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "dbbfb4c6821e07e2882e20c628014ce28af72f906d4e35b5a085bc6f9de749da", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dbbfb4c6821e07e2882e20c628014ce28af72f906d4e35b5a085bc6f9de749da", kill_on_drop: false }` [INFO] [stdout] dbbfb4c6821e07e2882e20c628014ce28af72f906d4e35b5a085bc6f9de749da [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] bbb704fa70dd310218041c112c803f15fa2eb5ad74869bd90666d21e2cabae82 [INFO] running `Command { std: "docker" "start" "-a" "bbb704fa70dd310218041c112c803f15fa2eb5ad74869bd90666d21e2cabae82", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.97 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.27 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling syn v1.0.73 [INFO] [stderr] Compiling log v0.4.14 [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling memchr v2.4.0 [INFO] [stderr] Checking ppv-lite86 v0.2.10 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Compiling serde_derive v1.0.126 [INFO] [stderr] Compiling maybe-uninit v2.0.0 [INFO] [stderr] Compiling serde v1.0.126 [INFO] [stderr] Checking smallvec v1.6.1 [INFO] [stderr] Checking scopeguard v1.1.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking slab v0.4.3 [INFO] [stderr] Checking remove_dir_all v0.5.3 [INFO] [stderr] Checking bytes v1.0.1 [INFO] [stderr] Checking pin-project-lite v0.2.6 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking once_cell v1.8.0 [INFO] [stderr] Checking regex-syntax v0.6.25 [INFO] [stderr] Compiling paste v1.0.5 [INFO] [stderr] Checking termcolor v1.1.2 [INFO] [stderr] Checking humantime v2.1.0 [INFO] [stderr] Checking instant v0.1.9 [INFO] [stderr] Checking lock_api v0.4.4 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling tokio v1.7.0 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Checking aho-corasick v0.7.18 [INFO] [stderr] Checking crossbeam-channel v0.4.4 [INFO] [stderr] Checking getrandom v0.2.3 [INFO] [stderr] Checking parking_lot_core v0.8.3 [INFO] [stderr] Checking iovec v0.1.4 [INFO] [stderr] Checking net2 v0.2.37 [INFO] [stderr] Checking signal-hook-registry v1.4.0 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking mio v0.7.13 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking uuid v0.8.2 [INFO] [stderr] Checking parking_lot v0.11.1 [INFO] [stderr] Checking mio v0.6.23 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking regex v1.5.4 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking rand v0.8.4 [INFO] [stderr] Checking env_logger v0.8.4 [INFO] [stderr] Checking tempfile v3.2.0 [INFO] [stderr] Compiling tokio-macros v1.2.0 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking ipc-channel v0.15.0 [INFO] [stderr] Checking ferrite-session v0.2.0 [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::base::channel::::forward_from` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:308:3 [INFO] [stdout] | [INFO] [stdout] 308 | / fn forward_from( [INFO] [stdout] 309 | | sender1: OpaqueSender, [INFO] [stdout] 310 | | receiver1: OpaqueReceiver, [INFO] [stdout] 311 | | ) -> Self [INFO] [stdout] | |___________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `internal::base::channel::::forward_from::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:315:28 [INFO] [stdout] | [INFO] [stdout] 315 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 316 | | let payload: T = receiver2.recv().await.unwrap(); [INFO] [stdout] 317 | | [INFO] [stdout] 318 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 322 | | }); [INFO] [stdout] 323 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `internal::base::channel::::forward_from`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::base::channel::::forward_to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:333:3 [INFO] [stdout] | [INFO] [stdout] 333 | / fn forward_to( [INFO] [stdout] 334 | | self, [INFO] [stdout] 335 | | sender1: OpaqueSender, [INFO] [stdout] 336 | | receiver1: OpaqueReceiver, [INFO] [stdout] 337 | | ) [INFO] [stdout] | |___^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `internal::base::channel::::forward_to::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/channel.rs:339:28 [INFO] [stdout] | [INFO] [stdout] 339 | task::spawn(async move { [INFO] [stdout] | ____________________________^ [INFO] [stdout] 340 | | let channel = self.recv().await.unwrap(); [INFO] [stdout] 341 | | [INFO] [stdout] 342 | | task::spawn_blocking(move || { [INFO] [stdout] ... | [INFO] [stdout] 346 | | }); [INFO] [stdout] 347 | | }); [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `internal::base::channel::::forward_to`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::base::shared::serialize_shared_channel` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:168:1 [INFO] [stdout] | [INFO] [stdout] 168 | / fn serialize_shared_channel( [INFO] [stdout] 169 | | channel: SharedChannel [INFO] [stdout] 170 | | ) -> SerializedSharedChannel [INFO] [stdout] 171 | | where [INFO] [stdout] 172 | | S: SharedProtocol + ForwardChannel, [INFO] [stdout] | |_____________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::base::shared::serialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:182:26 [INFO] [stdout] | [INFO] [stdout] 182 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 183 | | loop { [INFO] [stdout] 184 | | let receiver1 = receiver1.clone(); [INFO] [stdout] 185 | | [INFO] [stdout] ... | [INFO] [stdout] 220 | | } [INFO] [stdout] 221 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::base::shared::serialize_shared_channel`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::base::shared::deserialize_shared_channel` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:232:1 [INFO] [stdout] | [INFO] [stdout] 232 | / fn deserialize_shared_channel( [INFO] [stdout] 233 | | channel: SerializedSharedChannel [INFO] [stdout] 234 | | ) -> SharedChannel [INFO] [stdout] 235 | | where [INFO] [stdout] 236 | | S: SharedProtocol + ForwardChannel + Send, [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::base::shared::deserialize_shared_channel::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/base/shared.rs:240:26 [INFO] [stdout] | [INFO] [stdout] 240 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 241 | | while let Some((sender2, sender3)) = receiver1.recv().await { [INFO] [stdout] 242 | | debug!("[deserialize_shared_channel] acquiring remote shared channel"); [INFO] [stdout] 243 | | [INFO] [stdout] ... | [INFO] [stdout] 261 | | } [INFO] [stdout] 262 | | }); [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::base::shared::deserialize_shared_channel`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::channel::receive::receive_channel_slot` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:48:1 [INFO] [stdout] | [INFO] [stdout] 48 | / pub fn receive_channel_slot( [INFO] [stdout] 49 | | _: N, [INFO] [stdout] 50 | | cont: PartialSession, [INFO] [stdout] 51 | | ) -> PartialSession> [INFO] [stdout] ... | [INFO] [stdout] 55 | | I: Context, [INFO] [stdout] 56 | | N: ContextLens, [INFO] [stdout] | |______________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::channel::receive::receive_channel_slot::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:58:56 [INFO] [stdout] | [INFO] [stdout] 58 | unsafe_create_session(move |ctx1, sender| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 59 | | let ((), ctx2) = N::extract_source(ctx1); [INFO] [stdout] 60 | | [INFO] [stdout] 61 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 76 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 77 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::channel::receive::receive_channel_slot`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::channel::receive::send_channel_to` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:80:1 [INFO] [stdout] | [INFO] [stdout] 80 | / pub fn send_channel_to( [INFO] [stdout] 81 | | _n: N, [INFO] [stdout] 82 | | _m: M, [INFO] [stdout] 83 | | cont: PartialSession, [INFO] [stdout] ... | [INFO] [stdout] 92 | | N: ContextLens, A2, Target = C3>, [INFO] [stdout] 93 | | M: ContextLens, [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::channel::receive::send_channel_to::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/receive.rs:95:57 [INFO] [stdout] | [INFO] [stdout] 95 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 96 | | let (receiver1, ctx2) = M::extract_source(ctx1); [INFO] [stdout] 97 | | [INFO] [stdout] 98 | | let ctx3 = M::insert_target((), ctx2); [INFO] [stdout] ... | [INFO] [stdout] 116 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 117 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::channel::receive::send_channel_to`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::channel::send::send_channel_from` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:22:1 [INFO] [stdout] | [INFO] [stdout] 22 | / pub fn send_channel_from( [INFO] [stdout] 23 | | _n: N, [INFO] [stdout] 24 | | cont: PartialSession, [INFO] [stdout] 25 | | ) -> PartialSession> [INFO] [stdout] ... | [INFO] [stdout] 30 | | C2: Context, [INFO] [stdout] 31 | | N: ContextLens, [INFO] [stdout] | |____________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::channel::send::send_channel_from::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:33:57 [INFO] [stdout] | [INFO] [stdout] 33 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 34 | | let (p_chan, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 35 | | [INFO] [stdout] 36 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 56 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 57 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::channel::send::send_channel_from`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::channel::send::fork` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:104:1 [INFO] [stdout] | [INFO] [stdout] 104 | / pub fn fork( [INFO] [stdout] 105 | | cont1: PartialSession, [INFO] [stdout] 106 | | cont2: PartialSession, [INFO] [stdout] 107 | | ) -> PartialSession<>::Appended, SendChannel> [INFO] [stdout] ... | [INFO] [stdout] 116 | | CP: 'static, [INFO] [stdout] 117 | | CQ: 'static, [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::channel::send::fork::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/channel/send.rs:119:55 [INFO] [stdout] | [INFO] [stdout] 119 | unsafe_create_session(move |ctx, sender| async move { [INFO] [stdout] | _______________________________________________________^ [INFO] [stdout] 120 | | let (ctx1, ctx2) = CP::split_context(ctx); [INFO] [stdout] 121 | | [INFO] [stdout] 122 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 144 | | try_join!(child1, child2, child3).unwrap(); [INFO] [stdout] 145 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::channel::send::fork`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::choice::internal::offer_case::offer_case` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:25:1 [INFO] [stdout] | [INFO] [stdout] 25 | / pub fn offer_case( [INFO] [stdout] 26 | | _: N, [INFO] [stdout] 27 | | cont: PartialSession, [INFO] [stdout] 28 | | ) -> PartialSession> [INFO] [stdout] ... | [INFO] [stdout] 34 | | Row2: SumApp, [INFO] [stdout] 35 | | N: Prism, [INFO] [stdout] | |___________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::choice::internal::offer_case::offer_case::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/choice/internal/offer_case.rs:37:56 [INFO] [stdout] | [INFO] [stdout] 37 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 38 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 39 | | [INFO] [stdout] 40 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 52 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 53 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::choice::internal::offer_case::offer_case`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::cut::cut` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:186:1 [INFO] [stdout] | [INFO] [stdout] 186 | / pub fn cut( [INFO] [stdout] 187 | | cont1: PartialSession, [INFO] [stdout] 188 | | cont2: Func, [INFO] [stdout] 189 | | ) -> PartialSession [INFO] [stdout] ... | [INFO] [stdout] 197 | | C2: AppendContext<(A, ())>, [INFO] [stdout] 198 | | Func: FnOnce(C2::Length) -> PartialSession, [INFO] [stdout] | |______________________________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::cut::cut::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:202:56 [INFO] [stdout] | [INFO] [stdout] 202 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 203 | | let (ctx1, ctx2) = X::split_endpoints(ctx); [INFO] [stdout] 204 | | [INFO] [stdout] 205 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 217 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 218 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::cut::cut`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::cut::cut_append` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:229:1 [INFO] [stdout] | [INFO] [stdout] 229 | / pub fn cut_append( [INFO] [stdout] 230 | | cont1: PartialSession, [INFO] [stdout] 231 | | cont2: PartialSession, [INFO] [stdout] 232 | | ) -> PartialSession [INFO] [stdout] ... | [INFO] [stdout] 240 | | C1: AppendContext<(A, ()), Appended = C3>, [INFO] [stdout] 241 | | C1: AppendContext, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::cut::cut_append::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/cut.rs:243:58 [INFO] [stdout] | [INFO] [stdout] 243 | unsafe_create_session(move |ctx1, b_sender| async move { [INFO] [stdout] | __________________________________________________________^ [INFO] [stdout] 244 | | let (ctx2, ctx3) = >::split_context(ctx1); [INFO] [stdout] 245 | | [INFO] [stdout] 246 | | let (a_sender, a_receiver) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 259 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 260 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::cut::cut_append`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::fix::fix_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | / pub fn fix_session( [INFO] [stdout] 9 | | cont: PartialSession [INFO] [stdout] 10 | | ) -> PartialSession> [INFO] [stdout] 11 | | where [INFO] [stdout] ... | [INFO] [stdout] 15 | | A: Protocol, [INFO] [stdout] 16 | | F: RecApp<(RecX, R), Applied = A>, [INFO] [stdout] | |__________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::fix::fix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:18:56 [INFO] [stdout] | [INFO] [stdout] 18 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 19 | | let (sender2, receiver): (SenderOnce, _) = once_channel(); [INFO] [stdout] 20 | | [INFO] [stdout] 21 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 29 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 30 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::fix::fix_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::fix::unfix_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | / pub fn unfix_session( [INFO] [stdout] 34 | | _n: N, [INFO] [stdout] 35 | | cont: PartialSession, [INFO] [stdout] 36 | | ) -> PartialSession [INFO] [stdout] ... | [INFO] [stdout] 44 | | A: Protocol, [INFO] [stdout] 45 | | N: ContextLens, A, Target = C2>, [INFO] [stdout] | |_________________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::fix::unfix_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/fix.rs:47:57 [INFO] [stdout] | [INFO] [stdout] 47 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 48 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 49 | | [INFO] [stdout] 50 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 62 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 63 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::fix::unfix_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::shared::accept_shared_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / pub fn accept_shared_session( [INFO] [stdout] 21 | | cont: PartialSession<(Lock, ()), F::Applied> [INFO] [stdout] 22 | | ) -> SharedSession> [INFO] [stdout] 23 | | where [INFO] [stdout] 24 | | F: Protocol, [INFO] [stdout] 25 | | F: SharedRecApp>, [INFO] [stdout] 26 | | F::Applied: Protocol, [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `internal::session::shared::accept_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:32:20 [INFO] [stdout] | [INFO] [stdout] 32 | )>| async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 33 | | let (sender2, receiver2): (SenderOnce>, _) = once_channel(); [INFO] [stdout] 34 | | [INFO] [stdout] 35 | | let (sender4, receiver4): (SenderOnce, _) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 72 | | } [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::shared::accept_shared_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::shared::detach_shared_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:77:1 [INFO] [stdout] | [INFO] [stdout] 77 | / pub fn detach_shared_session( [INFO] [stdout] 78 | | cont: SharedSession> [INFO] [stdout] 79 | | ) -> PartialSession<(Lock, C), SharedToLinear> [INFO] [stdout] 80 | | where [INFO] [stdout] ... | [INFO] [stdout] 83 | | F::Applied: Protocol, [INFO] [stdout] 84 | | C: EmptyContext, [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `internal::session::shared::detach_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:87:86 [INFO] [stdout] | [INFO] [stdout] 87 | move |(receiver1, _): (ReceiverOnce>, C::Endpoints), sender1| async move { [INFO] [stdout] | ______________________________________________________________________________________^ [INFO] [stdout] 88 | | let (sender3, receiver3) = once_channel::<()>(); [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 117 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 118 | | }, [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::shared::detach_shared_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::shared::async_acquire_shared_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:122:1 [INFO] [stdout] | [INFO] [stdout] 122 | / pub fn async_acquire_shared_session( [INFO] [stdout] 123 | | shared: SharedChannel>, [INFO] [stdout] 124 | | cont1: impl FnOnce(Z) -> PartialSession<(F::Applied, ()), End> + Send + 'static, [INFO] [stdout] 125 | | ) -> task::JoinHandle<()> [INFO] [stdout] ... | [INFO] [stdout] 128 | | F: SharedRecApp>, [INFO] [stdout] 129 | | F::Applied: Protocol, [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::shared::async_acquire_shared_session::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:135:26 [INFO] [stdout] | [INFO] [stdout] 135 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 136 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 137 | | [INFO] [stdout] 138 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 164 | | try_join!(child1, child2, child3, child4).unwrap(); [INFO] [stdout] 165 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::shared::async_acquire_shared_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::shared::async_acquire_shared_session_with_result` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:168:1 [INFO] [stdout] | [INFO] [stdout] 168 | / pub fn async_acquire_shared_session_with_result( [INFO] [stdout] 169 | | shared: SharedChannel>, [INFO] [stdout] 170 | | cont1: impl FnOnce(Z) -> PartialSession<(F::Applied, ()), SendValue> [INFO] [stdout] 171 | | + Send [INFO] [stdout] ... | [INFO] [stdout] 177 | | F: SharedRecApp>, [INFO] [stdout] 178 | | F::Applied: Protocol, [INFO] [stdout] | |_______________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::shared::async_acquire_shared_session_with_result::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:184:26 [INFO] [stdout] | [INFO] [stdout] 184 | task::spawn(async move { [INFO] [stdout] | __________________________^ [INFO] [stdout] 185 | | let (sender1, receiver1) = once_channel(); [INFO] [stdout] 186 | | [INFO] [stdout] 187 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 221 | | val [INFO] [stdout] 222 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::shared::async_acquire_shared_session_with_result`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::shared::acquire_shared_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:225:1 [INFO] [stdout] | [INFO] [stdout] 225 | / pub fn acquire_shared_session( [INFO] [stdout] 226 | | shared: SharedChannel>, [INFO] [stdout] 227 | | cont1: impl FnOnce(N) -> PartialSession + Send + 'static, [INFO] [stdout] 228 | | ) -> PartialSession [INFO] [stdout] ... | [INFO] [stdout] 236 | | A1: SharedRecApp, Applied = A2>, [INFO] [stdout] 237 | | C1: AppendContext<(A2, ()), Appended = C2>, [INFO] [stdout] | |_____________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::shared::acquire_shared_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/shared.rs:239:57 [INFO] [stdout] | [INFO] [stdout] 239 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 240 | | let cont2 = cont1(N::nat()); [INFO] [stdout] 241 | | [INFO] [stdout] 242 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 266 | | // debug!("[acquire_shared_session] ran cont"); [INFO] [stdout] 267 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::shared::acquire_shared_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::value::send::send_value` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / pub fn send_value( [INFO] [stdout] 21 | | val: T, [INFO] [stdout] 22 | | cont: PartialSession, [INFO] [stdout] 23 | | ) -> PartialSession> [INFO] [stdout] ... | [INFO] [stdout] 26 | | A: Protocol, [INFO] [stdout] 27 | | C: Context, [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::value::send::send_value::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/value/send.rs:29:56 [INFO] [stdout] | [INFO] [stdout] 29 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 30 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] 31 | | [INFO] [stdout] 32 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 40 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 41 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::value::send::send_value`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::wrap::wrap_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:11:1 [INFO] [stdout] | [INFO] [stdout] 11 | / pub fn wrap_session( [INFO] [stdout] 12 | | cont: PartialSession [INFO] [stdout] 13 | | ) -> PartialSession> [INFO] [stdout] 14 | | where [INFO] [stdout] ... | [INFO] [stdout] 17 | | T: Send + 'static, [INFO] [stdout] 18 | | T::Unwrap: Protocol, [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::wrap::wrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:20:56 [INFO] [stdout] | [INFO] [stdout] 20 | unsafe_create_session(move |ctx, sender1| async move { [INFO] [stdout] | ________________________________________________________^ [INFO] [stdout] 21 | | let (sender2, receiver) = once_channel(); [INFO] [stdout] 22 | | [INFO] [stdout] 23 | | let child1 = task::spawn(async move { [INFO] [stdout] ... | [INFO] [stdout] 35 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 36 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::wrap::wrap_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `internal::session::wrap::unwrap_session` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | / pub fn unwrap_session( [INFO] [stdout] 40 | | _: N, [INFO] [stdout] 41 | | cont: PartialSession, [INFO] [stdout] 42 | | ) -> PartialSession [INFO] [stdout] ... | [INFO] [stdout] 46 | | T: Wrapper + Send + 'static, [INFO] [stdout] 47 | | N: ContextLens, T::Unwrap>, [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires elaborating drops for `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires borrow-checking `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires processing MIR for `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires unsafety-checking `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires building MIR for `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] note: ...which requires type-checking `internal::session::wrap::unwrap_session::{closure#0}::{closure#0}`... [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/ferrite-session-0.2.0/src/internal/session/wrap.rs:49:57 [INFO] [stdout] | [INFO] [stdout] 49 | unsafe_create_session(move |ctx1, sender1| async move { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 50 | | let (receiver1, ctx2) = N::extract_source(ctx1); [INFO] [stdout] 51 | | [INFO] [stdout] 52 | | let (sender2, receiver2) = once_channel(); [INFO] [stdout] ... | [INFO] [stdout] 64 | | try_join!(child1, child2).unwrap(); [INFO] [stdout] 65 | | }) [INFO] [stdout] | |___^ [INFO] [stdout] = note: ...which again requires type-checking `internal::session::wrap::unwrap_session`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 21 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0391`. [INFO] [stdout] [INFO] [stderr] error: could not compile `ferrite-session` due to 22 previous errors [INFO] running `Command { std: "docker" "inspect" "bbb704fa70dd310218041c112c803f15fa2eb5ad74869bd90666d21e2cabae82", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "bbb704fa70dd310218041c112c803f15fa2eb5ad74869bd90666d21e2cabae82", kill_on_drop: false }` [INFO] [stdout] bbb704fa70dd310218041c112c803f15fa2eb5ad74869bd90666d21e2cabae82