error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:36:5 | LL | / fn autobatch(self) -> impl Trait LL | | LL | | LL | | ... | LL | | where LL | | F: Callback, | |_______________________________________^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:36:30 | LL | fn autobatch(self) -> impl Trait | ^^^^^^^^^^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here note: required by a bound in `::autobatch` --> $DIR/false-positive-predicate-entailment-error.rs:43:12 | LL | fn autobatch(self) -> impl Trait | --------- required by a bound in this associated function ... LL | F: Callback, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `::autobatch` help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:36:5 | LL | / fn autobatch(self) -> impl Trait LL | | LL | | LL | | ... | LL | | where LL | | F: Callback, | |_______________________________________^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no` help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error[E0277]: the trait bound `F: Callback` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:43:12 | LL | F: Callback, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here note: the requirement `F: Callback` appears on the `impl`'s method `autobatch` but not on the corresponding trait's method --> $DIR/false-positive-predicate-entailment-error.rs:25:8 | LL | trait ChannelSender { | ------------- in this trait ... LL | fn autobatch(self) -> impl Trait | ^^^^^^^^^ this trait's method doesn't have the requirement `F: Callback` help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:36:30 | LL | fn autobatch(self) -> impl Trait | ^^^^^^^^^^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here error[E0277]: the trait bound `F: Callback` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:27:12 | LL | F: Callback; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:36:5 | LL | / fn autobatch(self) -> impl Trait LL | | LL | | LL | | ... | LL | | where LL | | F: Callback, | |_______________________________________^ the trait `MyFn` is not implemented for `F`, which is required by `F: Callback` | note: required for `F` to implement `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:14:21 | LL | impl> Callback for F { | ------- ^^^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here = note: duplicate diagnostic emitted due to `-Z deduplicate-diagnostics=no` help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error[E0277]: the trait bound `F: MyFn` is not satisfied --> $DIR/false-positive-predicate-entailment-error.rs:43:12 | LL | F: Callback, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `MyFn` is not implemented for `F` | note: required by a bound in `Callback` --> $DIR/false-positive-predicate-entailment-error.rs:10:20 | LL | trait Callback: MyFn { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `Callback` help: consider further restricting this bound | LL | F: Callback + MyFn, | +++++++++++ error: aborting due to 8 previous errors For more information about this error, try `rustc --explain E0277`.