* fixed GCC 4.4.0 mingw compilation:
[fw/sdcc] / device / lib / sincoshf.c
index 5143665d48e3846cff7e9f4702c67da917b21959..c4e877b6ade0a344972c2826b5b00c6041211b58 100644 (file)
@@ -1,6 +1,6 @@
 /*  sincoshf.c: Computes sinh or cosh of a 32-bit float as outlined in [1]
 
-    Copyright (C) 2001, 2002  Jesus Calvino-Fraga, jesusc@ieee.org 
+    Copyright (C) 2001, 2002  Jesus Calvino-Fraga, jesusc@ieee.org
 
     This library is free software; you can redistribute it and/or
     modify it under the terms of the GNU Lesser General Public
@@ -23,6 +23,7 @@
 
 #include <math.h>
 #include <errno.h>
+#include <stdbool.h>
 
 #define P0 -0.713793159E+1
 #define P1 -0.190333999E+0
@@ -36,7 +37,7 @@
 #define K2 0.24999308500451499336E+0 /* v**(-2) */
 #define K3 0.13830277879601902638E-4 /* v/2-1   */
 
-//WMAX is defined as ln(XMAX)-ln(v)+0.69
+//WMAX is defined as ln(HUGE_VALF)-ln(v)+0.69
 #define WMAX 44.93535952E+0
 //WBAR 0.35*(b+1)
 #define WBAR 1.05
 float sincoshf(const float x, const int iscosh)
 {
     float y, w, z;
-#ifdef SDCC_mcs51
-       bit sign;
-#else
-       char sign;
-#endif
-    
+       BOOL sign;
+
     if (x<0.0) { y=-x; sign=1; }
           else { y=x;  sign=0; }
 
@@ -62,7 +59,7 @@ float sincoshf(const float x, const int iscosh)
             if (w>WMAX)
             {
                 errno=ERANGE;
-                z=XMAX;
+                z=HUGE_VALF;
             }
             else
             {