This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Someone broke complex arithmetic
- From: Steve Kargl <sgk at troutmask dot apl dot washington dot edu>
- To: fortran at gcc dot gnu dot org, gcc at gcc dot gnu dot org
- Date: Mon, 18 Jul 2005 19:31:27 -0700
- Subject: Someone broke complex arithmetic
This is a heads up. Someone has broken complex arithmetic
on mainline. I've just found this problem and unfortunately
it will take me some time to cut the test program down to
something managable. This could be a gfortran bug or it
may be a middle/back end bug.
Here's the output from a program that brought the problem
to my attention. It uses downward recursion to compute
spherical Bessel functions.
NAG's F95 compiler
n x jn(x) jn(cmplx(x,0))
0 2.2900E+01 -3.4445E-02 -3.4445E-02 0.0000E+00
1 2.2900E+01 2.5337E-02 2.5337E-02 0.0000E+00
2 2.2900E+01 3.7765E-02 3.7765E-02 0.0000E+00
3 2.2900E+01 -1.7091E-02 -1.7091E-02 0.0000E+00
4 2.2900E+01 -4.2989E-02 -4.2989E-02 0.0000E+00
gfortran mainline
n x jn(x) jn(cmplx(x,0))
0 2.2900E+01 -3.4445E-02 -3.4445E-02 0.0000E+00
1 2.2900E+01 2.5337E-02 3.9638E-02 0.0000E+00
2 2.2900E+01 3.7765E-02 -5.0710E-02 0.0000E+00
3 2.2900E+01 -1.7091E-02 7.3035E-02 0.0000E+00
4 2.2900E+01 -4.2989E-02 -1.2032E-01 0.0000E+00
Notice the 3rd column is foobar.
Also note that I'm seeing this problem on i386-*-freebsd and
amd64-*-freebsd.
--
Steve