Function arguments for which variables should be passed by reference have to be marked as such.
See Function Argument Flags.
Note that in order for the expression evaluator to observe function argument
flags the function definition should be flagged as defining function argument
flags (by listing the
X1f4_E4_POST_TYPE bit in the
flags field of
See Function Flags.
If so, and only if so, will the expression evaluator observe the elements in
args field of the function definition, following the element
indicating the type of the last function argument and corresponding the
function arguments. These
args field elements list the flags for the
function arguments, one element per function argument, starting with the first.
For arguments for which variable pass by reference should be expected only (non read-only) variables can be passed.
See Variable Flags.
See struct x1f4_variable_type.
Note that no implicit conversions are performed for such function arguments and thus the variable type should match exactly the type of the function argument.
Function arguments that are not requested passed by reference cannot be overwritten for they are temporary storage space when the function is called.
See Implicit Conversions.
See Pass By Reference Example.