diff options
Diffstat (limited to 'src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs')
| -rw-r--r-- | src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs b/src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs index 7185376b440..cc24dbd96d2 100644 --- a/src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs +++ b/src/test/ui/rfc-2632-const-trait-impl/call-generic-method-dup-bound.rs @@ -16,12 +16,17 @@ impl const PartialEq for S { // This duplicate bound should not result in ambiguities. It should be equivalent to a single ~const // bound. -// const fn equals_self<T: PartialEq + ~const PartialEq>(t: &T) -> bool { -// FIXME(fee1-dead)^ why should the order matter here? -const fn equals_self<T: ~const PartialEq + PartialEq>(t: &T) -> bool { +const fn equals_self<T: PartialEq + ~const PartialEq>(t: &T) -> bool { *t == *t } -pub const EQ: bool = equals_self(&S); +trait A: PartialEq {} +impl<T: PartialEq> A for T {} + +const fn equals_self2<T: A + ~const PartialEq>(t: &T) -> bool { + *t == *t +} + +pub const EQ: bool = equals_self(&S) && equals_self2(&S); fn main() {} |
