I don't think INF is the same as infinity. It is most like implict declared variable with an undefined value.

Sent from my iPhone

On Nov 19, 2008, at 10:52 PM, "dojo at masterleep dot com" <[EMAIL PROTECTED] > wrote:

I am getting unreliable results from a small function using the latest
prepackaged Mac OS build (PPC) available from the wiki download page. The function behaves correctly if an otherwise irrelevant write statement is added. When the statement is removed, the function returns gibberish. This is ancient code which worked on older versions of gfortran, so hopefully I haven't
overlooked an obvious problem...

$ uname -a
Darwin Numenor 9.5.0 Darwin Kernel Version 9.5.0: Wed Sep 3 11:29:43 PDT 2008;
root:xnu-1228.7.58~1/RELEASE_I386 i386

$ gfortran --version
GNU Fortran (GCC) 4.4.0 20080823 (experimental) [trunk revision 139508]

$ cat xx.f
       program xx
       real xa(102)
       do 10 i=1,100
10      xa(i)=float(i)
       call scale (xa,23.,100,1)
       write (*,*) xa(101), xa(102)
       end


       subroutine scale(arr,axlen,npts,kcycle)
       real :: arr(*),axlen,minval,maxval,val
       integer :: npts,kcycle
       minval = +INF
       maxval = -INF
       do i=0,npts-1
               val=arr(1+kcycle*i)
               minval=amin1(val,minval)
               maxval=amax1(val,maxval)
       end do
       arr(npts*kcycle+1)=minval
       arr(npts*kcycle+kcycle+1)=(maxval-minval)/axlen
c       If the following line is uncommented, the function will work
c       write (*,*) 3
       end subroutine scale


# Correct function result (write statement is left in)
$ gfortran -o xx xx.f
$ xx
          3
  0.0000000       4.3478260

# Incorrect function result (write statement is commented out)
$ gfortran -o xx xx.f
$ xx
-2.13906214E+09  1.86005408E+08


--
Summary: Inconsistent function results depending on irrelevant
                   write statement
          Product: gcc
          Version: unknown
           Status: UNCONFIRMED
         Severity: major
         Priority: P3
        Component: fortran
       AssignedTo: unassigned at gcc dot gnu dot org
       ReportedBy: dojo at masterleep dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38188

Reply via email to