Passing static arrays as parameter

It is possible to pass a complete static array as a function parameter, but this is not recommended. When passing a static array to a function, the complete array is copied on the stack and every element is passed by value. The receiving local variables in the function must be defined with the same static array definition as the caller:
MAIN
  DEFINE arr ARRAY[5] OF INT
  CALL func(arr)
END MAIN

-- function defining same static array as the caller 
FUNCTION func(x)
  DEFINE x ARRAY[5] OF INT
  ...
END FUNCTION
Note: Dynamic arrays are passed by reference.