warning: the feature `effects` is incomplete and may not be safe to use and/or cause compiler crashes --> $DIR/call-generic-method-pass.rs:6:30 | LL | #![feature(const_trait_impl, effects)] | ^^^^^^^ | = note: see issue #102090 for more information = note: `#[warn(incomplete_features)]` on by default error: const `impl` for trait `PartialEq` which is not marked with `#[const_trait]` --> $DIR/call-generic-method-pass.rs:10:12 | LL | impl const PartialEq for S { | ^^^^^^^^^ | = note: marking a trait with `#[const_trait]` ensures all default method bodies are `const` = note: adding a non-const method body in the future would be a breaking change error[E0207]: the const parameter `host` is not constrained by the impl trait, self type, or predicates --> $DIR/call-generic-method-pass.rs:10:6 | LL | impl const PartialEq for S { | ^^^^^ unconstrained const parameter | = note: expressions using a const parameter must map each value to a distinct output value = note: proving the result of expressions other than the parameter are unique is not supported error: `~const` can only be applied to `#[const_trait]` traits --> $DIR/call-generic-method-pass.rs:19:32 | LL | const fn equals_self(t: &T) -> bool { | ^^^^^^^^^ error[E0284]: type annotations needed --> $DIR/call-generic-method-pass.rs:23:22 | LL | pub const EQ: bool = equals_self(&S); | ^^^^^^^^^^^^^^^ cannot infer the value of the constant `_` | note: required for `S` to implement `PartialEq` --> $DIR/call-generic-method-pass.rs:10:12 | LL | impl const PartialEq for S { | ----- ^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here error[E0284]: type annotations needed --> $DIR/call-generic-method-pass.rs:15:10 | LL | !self.eq(other) | ^^^^^^^^^^^^^^ cannot infer the value of the constant `_` | note: required for `S` to implement `PartialEq` --> $DIR/call-generic-method-pass.rs:10:12 | LL | impl const PartialEq for S { | ----- ^^^^^^^^^ ^ | | | unsatisfied trait bound introduced here error: aborting due to 5 previous errors; 1 warning emitted Some errors have detailed explanations: E0207, E0284. For more information about an error, try `rustc --explain E0207`.