Hi, using GCC 5.1 found that using static can be used to define a variable as having at least N elements in the array, and that its not NULL.
See: http://www-01.ibm.com/support/knowledgecenter/SSLTBW_1.12.0/com.ibm.zos.r12.cbclx01/param_decl.htm%23param_decl__static_array_index Given the simple function: void print_v3(float v[static 3]) { printf("%f %f %f\n", v[0], v[1], v[2]); } Calling `foo(NULL);` or `{ float v[2]; foo(v); }` should be able to cause a warning, it would be useful since this is a farily In fact I found Clang 3.6 does this already. eg: warning: array argument is too small; contains 2 elements, callee requires at least 3 [-Warray-bounds] Is there any reason GCC couldn't do the same? -- - Campbell