[Bug fortran/29660] New: get 'internal compiler error' when building numerical recipes

2006-10-30 Thread karlglazebrook at mac dot com
I get the following error when trying to compile a subroutine from the famed 
numerical recipes in fortran lib

 gfortran -O cisi.f

cisi.f: In function 'cisi':
cisi.f:1: internal compiler error: Bus error
Please submit a full bug report,

Code attached. Error goes away when I leave out the -O flag.

frenel.f has the same issue. Older g77 has no issue.

 SUBROUTINE cisi(x,ci,si)
  INTEGER MAXIT
  REAL ci,si,x,EPS,EULER,PIBY2,FPMIN,TMIN
  PARAMETER (EPS=6.e-8,EULER=.57721566,MAXIT=100,PIBY2=1.5707963,
 *FPMIN=1.e-30,TMIN=2.)
  INTEGER i,k
  REAL a,err,fact,sign,sum,sumc,sums,t,term,absc
  COMPLEX h,b,c,d,del
  LOGICAL odd
  absc(h)=abs(real(h))+abs(aimag(h))
  t=abs(x)
  if(t.eq.0.)then
si=0.
ci=-1./FPMIN
return
  endif
  if(t.gt.TMIN)then
b=cmplx(1.,t)
c=1./FPMIN
d=1./b
h=d
do 11 i=2,MAXIT
  a=-(i-1)**2
  b=b+2.
  d=1./(a*d+b)
  c=b+a/c
  del=c*d
  h=h*del
  if(absc(del-1.).lt.EPS)goto 1
11  continue
pause 'cf failed in cisi'
1   continue
h=cmplx(cos(t),-sin(t))*h
ci=-real(h)
si=PIBY2+aimag(h)
  else
if(t.lt.sqrt(FPMIN))then
  sumc=0.
  sums=t
else
  sum=0.
  sums=0.
  sumc=0.
  sign=1.
  fact=1.
  odd=.true.
  do 12 k=1,MAXIT
fact=fact*t/k
term=fact/k
sum=sum+sign*term
err=term/abs(sum)
if(odd)then
  sign=-sign
  sums=sum
  sum=sumc
else
  sumc=sum
  sum=sums
endif
if(err.lt.EPS)goto 2
odd=.not.odd
12continue
  pause 'maxits exceeded in cisi'
endif
2   si=sums
ci=sumc+log(t)+EULER
  endif
  if(x.lt.0.)si=-si
  return
  END


-- 
   Summary: get 'internal compiler error' when building numerical
recipes
   Product: gcc
   Version: 4.0.1
Status: UNCONFIRMED
  Severity: major
  Priority: P3
 Component: fortran
AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: karlglazebrook at mac dot com
GCC target triplet: i686-apple-darwin8


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



[Bug target/29660] get 'internal compiler error' when building numerical recipes

2006-10-30 Thread karlglazebrook at mac dot com


--- Comment #3 from karlglazebrook at mac dot com  2006-10-31 05:49 ---
Subject: Re:  get 'internal compiler error' when building numerical recipes

I'm happy to give 4.2.0 a try

Is it binary compatible with 4.0.1 or will I have to rebuild  
everything with a libgfortran dependence?

Karl

On 31/10/2006, at 3:46 PM, kargl at gcc dot gnu dot org wrote:

>
>
> --- Comment #2 from kargl at gcc dot gnu dot org  2006-10-31  
> 04:46 ---
> See Andrew's comment.  Using gfortran 4.0.1 is guaranteed
> not to compile NR.
>
>
> -- 
>
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29660
>
> --- You are receiving this mail because: ---
> You reported the bug, or are watching the reporter.


-- 


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