According to the fortran code
c f is a double precision variable.
c On first entry f is unspecified.
c On final exit f is the value of the function at x.
c
c g is a double precision array of dimension n.
c On first entry g is unspecified.
c On final exit g is the value of the gradient at x.
It is not clear whether f & g are not modified in the subroutine.
According to the fortran code
It is not clear whether
f&gare not modified in the subroutine.