error[E0277]: the trait bound `S: const Foo` is not satisfied --> $DIR/call-generic-method-nonconst.rs:25:34 | LL | pub const EQ: bool = equals_self(&S); | ----------- ^^ the trait `Foo` is not implemented for `S` | | | required by a bound introduced by this call | note: required by a bound in `equals_self` --> $DIR/call-generic-method-nonconst.rs:18:25 | LL | const fn equals_self(t: &T) -> bool { | ^^^^^^^^^^ required by this bound in `equals_self` help: consider introducing a `where` clause, but there might be an alternative better way to express this requirement | LL | pub const EQ: bool where S: Foo = equals_self(&S); | ++++++++++++ error: aborting due to 1 previous error For more information about this error, try `rustc --explain E0277`.