fn test<x, y : usize>(a : i32[x, y]) -> i32[x, y] { return a; } fn main<x, y, z : usize>() -> i32[y, z] { let n : i32[y, z]; return test::<y, z>(n); }