<!-- Thank you for filing a bug report! 🐛 Please provide a short summary of the bug, along with any information you feel relevant to replicating the bug. --> I tried this code: ```rust const fn equals_self<T: PartialEq + ~const PartialEq>(t: &T) -> bool { *t == *t } ``` I expected to see this happen: It should be the same as ```rust const fn equals_self<T: ~const PartialEq + PartialEq>(t: &T) -> bool { *t == *t } ``` Instead, this happened: It errors for the former but does not error for the second example. @rustbot label F-const_trait_impl See https://github.com/rust-lang/rust/pull/88328/files#r697229693