1  RETURN
   Terminates a GOSUB subroutine procedure and returns control to
   the command following the calling GOSUB command.

   Format

     RETURN  [status-code]
 

2  Parameter
 

status-code

   Defines a longword (integer) value or expression equivalent to
   an integer value that gives the exit status of the subroutine by
   defining a numeric value for the reserved global symbol $STATUS.
   The value can be tested by the next outer command level. The low-
   order 3 bits of the longword integer value change the value of
   the reserved global symbol $SEVERITY. If you specify a status
   code, DCL interprets the code as a condition code. Note that
   even numeric values produce warning, error, and fatal error
   messages, and that odd numeric values produce either no message
   or a success or informational message.

   If you do not specify a status code, the current value of $STATUS
   is saved. When control returns to the outer command level,
   $STATUS contains the status of the most recently executed command
   or program.
 

2  Example

 $ SHOW TIME
   15-DEC-2001 14:25:42
 $ GOSUB SYMBOL
 $ EXIT
 $ SYMBOL:
 $     SHOW SYMBOL RED
       RED = "SET DEFAULT [LOWE.DCL]"
 $     RETURN 1

     The GOSUB command transfers control to the subroutine labeled
     SYMBOL. After the subroutine is executed, the RETURN command
     transfers control back to the command following the calling
     GOSUB statement, giving $STATUS and $SEVERITY a value of 1. The
     procedure then exits.
 

