From: michael on
The following function when called from a Main Program causes an access
violation error if
compiled with -O3 switch with the Intel Fortran 9.1 compiler. It works
ok if optimization is disabled. The offending statement is
IF(I1.LT.1)I1=1

DOUBLE PRECISION FUNCTION VSUM(V,N,I1)
IMPLICIT NONE
INTEGER I,I1,N
DOUBLE PRECISION V(N)
DOUBLE PRECISION ZERO
DATA ZERO/0.0D+0/


IF (N .LT. 1) RETURN
IF(I1 .LT. 1) I1=1


VSUM=ZERO
DO I=I1,N
VSUM=VSUM+V(I)
ENDDO


RETURN
END