¿Qué hace la etiqueta [REFERENCE] en una declaración de argumento?

Estoy escribiendo una función de devolución de llamada personalizada en Fortran para una pieza de software (ejemploaqu) que incluye la siguiente declaración de argumento

SUBROUTINE CONTACT_FORCE(TIME,UPAR,NPAR,PEN,RVEL,JFLAG,IFLAG,RESULT)
!DEC$ ATTRIBUTES DLLEXPORT,C::CONTACT_FORCE
...
DOUBLE PRECISION RESULT[REFERENCE](6)   !Compiles ok

Que se compila bien con Compaq Visual Fortran 6. Entonces mi pregunta es qué hace el[REFERENCE] etiqueta hacer? Pensé que Fortranpasa todo por referencia (y no por valor). Por supuesto, no hay nada en el compilador que lo ayude, y buscar en línea es difícil porque la palabra de referencia se usa tanto con respecto a Fortran que no sé cómo limitarla.

Edita lo anterior debe ser idéntico a

SUBROUTINE CONTACT_FORCE(TIME,UPAR,NPAR,PEN,RVEL,JFLAG,IFLAG,RESULT)
!DEC$ ATTRIBUTES DLLEXPORT,C::CONTACT_FORCE
!DEC$ ATTRIBUTES REFERENCE::RESULT
...
DOUBLE PRECISION RESULT(6)   !Compiles ok

Respuestas a la pregunta(1)

Su respuesta a la pregunta