Copyright Digital Equipment Corp. All rights reserved.

RESULT_Keyword

 Specifies a name for the result variable of a function.  Its name
 must be different from the name of the function.

 If RESULT is not specified, the function name is the result
 variable.  All references to the function are references to the
 function result variable.

 If RESULT is specified, the result name is the result variable.
 In this case, all references to the function name are recursive
 calls, and the function name must not appear in specification
 statements.

 The following is an example of a recursive function specifying a
 RESULT variable:

   RECURSIVE FUNCTION FACTORIAL(P) RESULT(L)
     INTEGER, INTENT(IN) :: P
     INTEGER L
     IF (P == 1) THEN
       L = 1
     ELSE
       L = P * FACTORIAL(P - 1)
     END IF
   END FUNCTION