.help zcall,zcall1,zcall2,zcall3,zcall4,zcall5 May84 "System Interface" .ih NAME zcall -- call an external procedure by reference .ih SYNOPSIS .nf zcall1 (procedure, arg1) zcall2 (procedure, arg1, arg2) zcall3 (procedure, arg1, arg2, arg3) zcall4 (procedure, arg1, arg2, arg3, arg4) zcall5 (procedure, arg1, arg2, arg3, arg4, arg5) int procedure # reference to external procedure arb arg1, ..., arg\fIn\fR # arguments for external procedure .fi .ih DESCRIPTION The subroutine referenced by the magic integer passed as the first argument is called as a subprocedure. The \fIn\fR arguments to \fBzcall\fR are passed to the subprocedure by reference; the datatypes of the actual arguments are unknown but the number and datatypes of the arguments must match those expected by the subprocedure. The arguments are restricted to variables, constants, arrays, and array elements of datatypes \fBcsilrd\fR. The magic integer \fIprocedure\fR must have been obtained by a prior call to \fBzlocpr\fR. .ih RETURN VALUE Any of the arguments may be used to return a value depending on the significance of the argument to the subprocedure called. The procedure itself may not return a value, i.e., \fBzcall\fR may not be used to call a function. .ih NOTES The arguments to \fIprocedure\fR must not be Fortran CHARACTER variables or constants, external procedures, or objects of datatype complex. .ih SEE ALSO zlocpr .endhelp