fn f(x: T) -> [T; N] { [x; { N }] } fn g(x: T) -> [T; N] { [x; { N }] //~^ ERROR the trait bound `T: Copy` is not satisfied } fn main() { let x: [u32; 5] = f::(3); assert_eq!(x, [3u32; 5]); }