ed: > void main() > { > int[] a = [1,2,3,4]; > int[2][2] b = a; // fine, does an array copy > } > Is it a bug or by design? That looks like a compiler bug. You are supposed to use a cast to do an assignment like that. Bye, bearophile