If I have: float[16] a; can I cast it like this cast(float[4][4])a and pass it into a function expecting a float[4][4] or will this not work properly. It seems there is a problem doing so. This is for working with matricies so I should most probably write some sort of class to allow row and columns access