https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116400
--- Comment #16 from kargls at comcast dot net --- (In reply to kargls from comment #15) > (In reply to Francois-Xavier Coudert from comment #12) > > Created attachment 61532 [details] > > Regeneration script > > > > Attached is a shell script, to be placed in libgfortran/, that can be run in > > that directory to regenerated all files. > > Thanks! I won't have a chance to look at this until the weekend. > Definitely need to find the right m4 processor. On FreeBSD m4 is not GNU m4 and the script fails. Here's an example output, diff --git a/libgfortran/generated/_abs_c10.F90 b/libgfortran/generated/_abs_c10.F90 index 9b6f1280be8..6694a1e596d 100644 --- a/libgfortran/generated/_abs_c10.F90 +++ b/libgfortran/generated/_abs_c10.F90 @@ -32,14 +32,14 @@ #include "kinds.inc" #include "c99_protos.inc" -#if defined (HAVE_GFC_COMPLEX_10) -#ifdef HAVE_CABSL +#if defined (HAVE_GFC_UNKNOW_) +#ifdef HAVE__ -elemental function _gfortran_specific__abs_c10 (parm) - complex (kind=10), intent (in) :: parm - real (kind=10) :: _gfortran_specific__abs_c10 +elemental function _gfortran_specific___ (parm) + unknown (kind=), intent (in) :: parm + unknown (kind=) :: _gfortran_specific___ - _gfortran_specific__abs_c10 = abs (parm) + _gfortran_specific___ = (parm) end function #endif If I modify the scrip to use 'm4 -g', then it produces what appears to be the correct result. On FreeBSD, -g tells m4 to use GNU extensions. I suspect this is the same on other *BSD operating system. I also change m4 to gm4, which is the named used by FreeBSB's port system for GNU m4. This also seems to give the correct processing.