ENT 

Passing Arguments BY CONTENT to User-Defined Functions

Though the formal parameters of a user-defined function definition may only be specified as BY REFERENCE or BY VALUE, you can still effectively pass arguments to a user-defined function BY CONTENT using the CONTENT-OF intrinsic function. To achieve this, you must specify the formal parameters as BY REFERENCE in the function definition. On the user-defined function invocation, the CONTENT-OF intrinsic function would then be used to wrap each argument that you would like to be passed effectively BY CONTENT; for example:

compute result = docalc(content-of(arg-1) arg-2 arg-3)

The CONTENT-OF intrinsic function produces a temporary copy of the input argument. The temporary copy is then provided BY REFERENCE to the user-defined function and any modifications to the formal parameter within the user-defined function definition are effectively made to the temporary copy.