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