]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
c99_functions.c: Add function prototypes to avoid warnings from -Wstrict-prototypes...
authorRoger Sayle <roger@eyesopen.com>
Thu, 12 Jan 2006 17:37:47 +0000 (17:37 +0000)
committerRoger Sayle <sayle@gcc.gnu.org>
Thu, 12 Jan 2006 17:37:47 +0000 (17:37 +0000)
* intrinsics/c99_functions.c: Add function prototypes to avoid
warnings from -Wstrict-prototypes -Wmissing-prototypes.  On Tru64
work around a brain-dead libm by redirecting calls to cabs{,f,l}
to a local __gfc_cabs{,f,l}.

From-SVN: r109646

libgfortran/ChangeLog
libgfortran/intrinsics/c99_functions.c

index ccf5dec226af9cd60a45693f8385798cbec7d8b4..9eaa989c063141f92c0abfcef8052dcd370c3245 100644 (file)
@@ -1,3 +1,10 @@
+2006-01-12  Roger Sayle  <roger@eyesopen.com>
+
+       * intrinsics/c99_functions.c: Add function prototypes to avoid
+       warnings from -Wstrict-prototypes -Wmissing-prototypes.  On Tru64
+       work around a brain-dead libm by redirecting calls to cabs{,f,l}
+       to a local __gfc_cabs{,f,l}.
+
 2006-01-07  Janne Blomqvist  <jb@gcc.gnu.org>
 
        * configure.ac: Remove check for sys/mman.h.
index 5e93e4279b276593eafb8ff496ef2eeb96271f91..feb4c08b4791f4357300b2d2841249f0fcd45d6e 100644 (file)
@@ -35,6 +35,33 @@ Boston, MA 02110-1301, USA.  */
 #define C99_PROTOS_H WE_DONT_WANT_PROTOS_NOW
 #include "libgfortran.h"
 
+/* Tru64's <math.h> declares a non-C99 compliant implementation of cabs,
+   which takes two floating point arguments instead of a single complex.
+   To work around this we redirect cabs{,f,l} calls to __gfc_cabs{,f,l}.  */
+
+#ifdef __osf__
+#undef HAVE_CABS
+#undef HAVE_CABSF
+#undef HAVE_CABSL
+#define cabs __gfc_cabs
+#define cabsf __gfc_cabsf
+#define cabsl __gfc_cabsl
+#endif
+
+/* Prototypes to silence -Wstrict-prototypes -Wmissing-prototypes.  */
+
+float cabsf(float complex);
+double cabs(double complex);
+long double cabsl(long double complex);
+
+float cargf(float complex);
+double carg(double complex);
+long double cargl(long double complex);
+
+float complex clog10f(float complex);
+double complex clog10(double complex);
+long double complex clog10l(long double complex);
+
 
 #ifndef HAVE_ACOSF
 #define HAVE_ACOSF 1