Variable Length Arrays (VLA) is an addition to the C99 standard and until recently Visual Studio did not support C99 and, as far as I know, does not support VLA. If you build this in gcc outside of C99 mode, say in mode c90and use the flag -pedantic, it will give a warning:
: ISO C90 'vec' [-Wvla]
gcc VLA C99 ++.
, C11 VLA , , C11 6.10.8.3 , :
_ _STDC_NO_VLA_ _ 1, , .