3 // We previously always returned ambiguity when equating generic consts, even if they
4 // only contain generic parameters. This is incorrect as trying to unify `N > 1` with `M > 1`
6 #![allow(incomplete_features)]
7 #![feature(generic_const_exprs)]
9 enum Assert<const COND: bool> {}
11 impl IsTrue for Assert<true> {}
13 struct Foo<const N: usize, const M: usize>;
14 trait Bar<const N: usize, const M: usize> {}
15 impl<const N: usize, const M: usize> Bar<N, M> for Foo<N, M>
17 Assert<{ N > 1 }>: IsTrue,
18 Assert<{ M > 1 }>: IsTrue,