error[E0275]: overflow evaluating the requirement `mpstthree::binary::struct_trait::send::Send, ...>>>: std::marker::Send` --> tests/infinite_type/fail_2.rs:14:10 | 14 | More(Send>>), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: required because it appears within the type `SumOp` --> tests/infinite_type/fail_2.rs:13:6 | 13 | enum SumOp { | ^^^^^ = note: required for `Recv, mpstthree::binary::struct_trait::end::End>` to implement `Session` error[E0275]: overflow evaluating the requirement `Recv, mpstthree::binary::struct_trait::end::End>: Session` --> tests/infinite_type/fail_2.rs:21:23 | 21 | fn nice_sum_server(s: NiceSumServer) -> Result<(), Box> { | ^^^^^^^^^^^^^^^^^^ | = note: required for `Recv, mpstthree::binary::struct_trait::end::End>>` to implement `Session` note: required because it appears within the type `mpstthree::binary::struct_trait::send::Send, mpstthree::binary::struct_trait::end::End>>>` --> src/binary/struct_trait/send.rs | | pub struct Send | ^^^^ note: required because it appears within the type `SumOp` --> tests/infinite_type/fail_2.rs:13:6 | 13 | enum SumOp { | ^^^^^ note: required by a bound in `Recv` --> src/binary/struct_trait/recv.rs | | pub struct Recv | ---- required by a bound in this struct | where | T: marker::Send, | ^^^^^^^^^^^^ required by this bound in `Recv` error[E0275]: overflow evaluating the requirement `Recv, mpstthree::binary::struct_trait::end::End>: Session` --> tests/infinite_type/fail_2.rs:25:29 | 25 | fn nice_sum_server_accum(s: NiceSumServer, x: i32) -> Result<(), Box> { | ^^^^^^^^^^^^^^^^^^ | = note: required for `Recv, mpstthree::binary::struct_trait::end::End>>` to implement `Session` note: required because it appears within the type `mpstthree::binary::struct_trait::send::Send, mpstthree::binary::struct_trait::end::End>>>` --> src/binary/struct_trait/send.rs | | pub struct Send | ^^^^ note: required because it appears within the type `SumOp` --> tests/infinite_type/fail_2.rs:13:6 | 13 | enum SumOp { | ^^^^^ note: required by a bound in `Recv` --> src/binary/struct_trait/recv.rs | | pub struct Recv | ---- required by a bound in this struct | where | T: marker::Send, | ^^^^^^^^^^^^ required by this bound in `Recv` error[E0275]: overflow evaluating the requirement `Recv, mpstthree::binary::struct_trait::end::End>: Session` --> tests/infinite_type/fail_2.rs:44:29 | 44 | fn nice_sum_client_accum(s: NiceSumClient, mut xs: Vec) -> Result> { | ^^^^^^^^^^^^^^^^^^ | = note: required for `Recv, mpstthree::binary::struct_trait::end::End>>` to implement `Session` note: required because it appears within the type `mpstthree::binary::struct_trait::send::Send, mpstthree::binary::struct_trait::end::End>>>` --> src/binary/struct_trait/send.rs | | pub struct Send | ^^^^ note: required because it appears within the type `SumOp` --> tests/infinite_type/fail_2.rs:13:6 | 13 | enum SumOp { | ^^^^^ = note: required for `Recv, mpstthree::binary::struct_trait::end::End>` to implement `Session`