Variable-length array types shall not be used
Variable-length array types shall not be used.
When the size of an array declared in a block or function prototype is not an integer constant expression, you specify variable array types. Variable array types are typically implemented as a variable size object stored on the stack. Using variable type arrays can make it impossible to determine statistically the amount of memory for the stack requires.
If the size of a variable-length array is negative or zero, the behavior is undefined.
If a variable-length array must be compatible with another array type, then the size of the array types must be identical and positive integers. If your array does not meet these requirements, the behavior is undefined.
If you use a variable-length array type in a sizeof,
it is uncertain if the array size is evaluated or not.
If you expect a rule violation but do not see it, refer to the documentation of Polyspace® Code Prover™ or Polyspace Code Prover Server™.
| Group: Pointers and Arrays |
| Category: Required |
| AGC Category: Required |