It's possible and necessary at times to cast arrays for systems work. For example:
ubyte[] ba = readdata();
uint[] = cast(uint[])ba;
This isn't described and needs to be if it's supported in the language. I'm assuming it's supported, because otherwise many things would be difficult.
Also, any limitations ala C++ aliasing rules need to be described.
Comment #1 by jarrett.billingsley — 2008-12-06T13:26:02Z
Huh, I would've expected it to be documented somewhere. But yes, it's legal, and will throw a runtime error if there is a size mismatch (that is, if the size of the array in bytes is not an even multiple of the destination type element size).