I have the following 2 typedef's:
typedef float matrix_3x4[3][4];
typedef matrix_3x4 bone_mat[128];
And the following function definition:
float ****get_bones();
Why is the following code giving me a type conversion error?
bone_mat *mat = get_bones();
Error:
error: cannot convert ‘float ****’ to ‘float (*)[128][3][4]’ in initialization
85 | bone_mat *mat = get_bones();
| ~~~~~~~~~^~
| |
| float****
Tried changing the type of mat
to bone_mat
or bone_mat**
, but shouldn't float(*)[128][3][4]
be the same as float****
?
Casting the return value of the function to (bone_mat*)
doesn't work either.