nanl
strtold
are missing. In addition, there are some lessor functions like
err, errc, errx, strtold_l, swprintf, vfwscanf missing. I assume
this is due to no builtins for them or Fortran not using them. If
Ada or other non-C languages might, might make sense to add them too.
I've not limited myself to builtins used by Fortran, but tried to
provide a complete list (Fortran only uses math builtins and memory
(de)allocation functions). The missing functions are those for which
there is currently no definition in builtins.def: that also includes
strtold.
The issue with nanl() is more complex. It is in the list of functions
that need to be fixed:
$ nm -arch ppc /usr/lib/libSystem.dylib | grep _nanl
U _nanl$LDBL128
90178f20 T _nanl$LDBL128
901791a0 T _nanl
90179190 T _nanl$LDBL64
taigne ~ $ nm -arch ppc64 /usr/lib/libSystem.dylib | grep _nanl
0000000000161290 T _nanl
0000000000161090 T _nanl$LDBL128
0000000000161280 T _nanl$LDBL64
but in Andrew's and Jack's patch, it is excluded with the following
comment:
+ /*darwin_patch_builtin (BUILT_IN_NANL);*/ /* Broken for now
since it
+ is defined as DEF_GCC_BUILTIN when it is also a C99
function. */
Because my gfortran time right now is limited, I have decided against
trying to get it into the patch. I'll note that fact into the PR
after committing the patch, and maybe someone (or myself) can try
later on to determine what needs to be done. For now, it's of limited
importance, because it's not among the builtins used in Fortran.
Thanks for the review and comments,
FX
--
François-Xavier Coudert
http://www.homepages.ucl.ac.uk/~uccafco/