De : Virginie TRINITE <virginie.trinite@thalesgroup.com>
Date : 2 juillet 2007 15:59:09 HAEC
À : FX Coudert <fxcoudert@gmail.com>
Objet : Rép : internal compiler error
This is the part of the code that did'nt compile:
subroutine SPLINE (x,y,n,yp1,ypn,y2)
parameter (nmax=5000)
real*4 x(n),y(n),y2(n),u(nmax)
if (yp1.gt.0.99e30) then
y2(1) = 0.
u(1) = 0.
else
y2(1) =-0.5
u(1) = (3./(x(2)-x(1)))*((y(2)-y(1))/(x(2)-x(1))-yp1)
endif
do i=2,n-1
sig = (x(i)-x(i-1))/(x(i+1)-x(i-1))
p = sig*y2(i-1)+2.
y2(i) = (sig-1.)/p
u(i) = (6.*( (y(i+1)-y(i))/(x(i+1)-x(i))
& - (y(i)-y(i-1))/(x(i)-x(i-1)))
& /(x(i+1)-x(i-1))-sig*u(i-1) )/p
end do
if (ypn.gt.0.99e30) then
qn = 0.
un = 0.
else
qn = 0.5
un = (3./(x(n)-x(n-1)))*(ypn-(y(n)-y(n-1))/(x(n)-x(n-1)))
endif
y2(n) = (un-qn*u(n-1))/(qn*y2(n-1)+1.0)
do k=n-1,1,-1
y2(k) = y2(k)*y2(k+1) + u(k)
end do
end
D:\GNU\trunk\BDiiiv\sourcefiles>gfortran -c toto.f
toto.f: In function 'spline':
toto.f:40: internal compiler error: Segmentation fault
More information of my version of gfortran: gfortran-v
Using built-in specs.
Target: i386-pc-mingw32
Configured with: ../trunk/configure --prefix=/mingw --enable-
languages=c,fortran
--with-gmp=/home/coudert/local --disable-nls --with-ld=/mingw/bin/
ld --with-as=
/mingw/bin/as --disable-werror --enable-bootstrap --enable-threads
--build=i386-
pc-mingw32 --disable-shared --enable-libgomp
Thread model: win32
gcc version 4.3.0 20070612 (experimental)
Thanks for your reply
FX Coudert a écrit :
Hello,
When compiling with gfortran using gfortran-windows.exe (version
4.3.0)
I have the following error:
In function 'splie2':
internal compiler error: Segmentation fault
However when I compile the same piece of code with gfortran under
linux (version 4.1.1), I have no error
We'd need a testcase to reproduce the error in order to fix it.
Can you reduce the code that triggers the error to something of
reasonable size (and possibly unencumbered by copyright)?
Thanks,
FX