Next: Pass By Reference Example, Previous: Function Look Up Example, Up: Functions
Function arguments for which variables should be passed by reference have to be marked as such.
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
function definition).
See Function Flags.
If so, and only if so, will the expression evaluator observe the elements in
the 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 Variables.
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.