// compile-flags: -Ztrait-solver=next // revisions: pass fail //[pass] check-pass struct Wrapper([T; N]); trait Foo {} fn needs_foo() {} #[cfg(fail)] impl Foo for [T; 1] {} #[cfg(pass)] impl Foo for [T; N] {} fn test() { needs_foo::<[T; N]>(); //[fail]~^ ERROR the trait bound `[T; N]: Foo` is not satisfied } fn main() {}