^ARGN

Access a parameter as numeric

WTSupported in traditional Synergy on Windows
WNSupported in Synergy .NET on Windows
USupported on UNIX
VSupported on OpenVMS
^ARGN(position)

Arguments

position

The ordinal position of the parameter. (n)

Discussion

^ARGN accesses the specified formal parameter as if the parameter were declared as numeric.

^ARGN is a positional parameter reference and cannot be present in a main routine.

Using ^ARGN on an alpha parameter creates a decimal descriptor. A null parameter ("") is not allowed and generates an $ERR_NULARG error.

Tip

You can use a dimension on the return value of ^ARGN to access an array. For example, the following is valid:

^argn(1) [2]

Examples

subroutine sub 
    a_arg1              ,a 
    a_arg2              ,a 
    a_result            ,d
proc 
    if (a_arg1) then 
      a_result = 2 * ^argn(2) 
    else 
      a_result = a_arg2 
    xreturn
endsubroutine