This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
RE: libgfortran generated and long double calls
- From: Jack Howarth <howarth at bromo dot msbb dot uc dot edu>
- To: fortran at gcc dot gnu dot org
- Cc: gcc at gcc dot gnu dot org
- Date: Sun, 27 May 2007 01:50:53 -0400
- Subject: RE: libgfortran generated and long double calls
A quick stab at changing...
specific__exp_r16 = exp (parm)
to
specific__exp_r16 = expl (parm)
...in gcc/libgfortran/generated/_exp_r16.F90
produced the followimg compilation error on
Darwin PPC...
../../../gcc-4.2-20070526/libgfortran/generated/_exp_r16.F90:47.23:
specific__exp_r16 = expl (parm)
1
Error: Function reference to 'expl' at (1) is to a non-PURE procedure within a PURE procedure
make[3]: *** [_exp_r16.lo] Error 1
make[2]: *** [all] Error 2
make[1]: *** [all-target-libgfortran] Error 2
make: *** [all] Error 2
Which led me to take a look at gcc/libgfortran/c99_protos.h. There I noticed we
have no mention of expl() despite it being listed as a valid C99 function...
http://en.wikibooks.org/wiki/C_Programming/Further_math
Again, is it possible that Darwin PPC simply is exposing the fact
that we are missing valid C99 functions that should be used in
the generated *.F90 routines for r10 and r16?
Jack