error[E0277]: the trait bound `(): _Contains<&C>` is not satisfied --> $DIR/issue-85848.rs:24:29 | LL | writes_to_specific_path(&cap); | ----------------------- ^^^^ the trait `_Contains<&C>` is not implemented for `()` | | | required by a bound introduced by this call | = help: the trait `Delegates` is implemented for `T` note: required for `&C` to implement `Contains<(), true>` --> $DIR/issue-85848.rs:21:12 | LL | impl Contains() }> for U where T: _Contains {} | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^ ------------ unsatisfied trait bound introduced here note: required for `&C` to implement `Delegates<()>` --> $DIR/issue-85848.rs:12:12 | LL | impl Delegates for T where T: Contains {} | ^^^^^^^^^^^^ ^ ----------------- unsatisfied trait bound introduced here note: required by a bound in `writes_to_specific_path` --> $DIR/issue-85848.rs:30:31 | LL | fn writes_to_specific_path>(cap: &C) {} | ^^^^^^^^^^^^^ required by this bound in `writes_to_specific_path` error: unconstrained generic constant --> $DIR/issue-85848.rs:24:29 | LL | writes_to_specific_path(&cap); | ----------------------- ^^^^ | | | required by a bound introduced by this call | = help: try adding a `where` bound using this expression: `where [(); { contains::() }]:` note: required for `&C` to implement `Contains<(), true>` --> $DIR/issue-85848.rs:21:12 | LL | impl Contains() }> for U where T: _Contains {} | ^^^^^^^^^^^^----------------------^ ^ | | | unsatisfied trait bound introduced here note: required for `&C` to implement `Delegates<()>` --> $DIR/issue-85848.rs:12:12 | LL | impl Delegates for T where T: Contains {} | ^^^^^^^^^^^^ ^ ----------------- unsatisfied trait bound introduced here note: required by a bound in `writes_to_specific_path` --> $DIR/issue-85848.rs:30:31 | LL | fn writes_to_specific_path>(cap: &C) {} | ^^^^^^^^^^^^^ required by this bound in `writes_to_specific_path` error[E0308]: mismatched types --> $DIR/issue-85848.rs:24:5 | LL | writes_to_specific_path(&cap); | ^^^^^^^^^^^^^^^^^^^^^^^ expected `true`, found `{ contains::() }` | = note: expected constant `true` found constant `{ contains::() }` error: aborting due to 3 previous errors Some errors have detailed explanations: E0277, E0308. For more information about an error, try `rustc --explain E0277`.