aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/float.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>1997-09-26 20:32:02 +0000
committerBruce Momjian <bruce@momjian.us>1997-09-26 20:32:02 +0000
commitc30b8f9dbda8038afad9f829267b058f9bd1399c (patch)
tree7a749c1c926ff4bb2825012bb7e7b2ef5bb47853 /src/backend/utils/adt/float.c
parent5e2c0a87c9e1ab57a5340be37687831aab55b175 (diff)
downloadpostgresql-c30b8f9dbda8038afad9f829267b058f9bd1399c.tar.gz
postgresql-c30b8f9dbda8038afad9f829267b058f9bd1399c.zip
AIX float fix.
Diffstat (limited to 'src/backend/utils/adt/float.c')
-rw-r--r--src/backend/utils/adt/float.c25
1 files changed, 22 insertions, 3 deletions
diff --git a/src/backend/utils/adt/float.c b/src/backend/utils/adt/float.c
index 64da51ada45..6917e52f247 100644
--- a/src/backend/utils/adt/float.c
+++ b/src/backend/utils/adt/float.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.23 1997/09/24 15:40:59 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/float.c,v 1.24 1997/09/26 20:32:02 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@@ -1518,14 +1518,31 @@ double x;
#ifndef HAVE_ISINF
#if defined(aix)
+
#ifdef CLASS_CONFLICT
/* we want the math symbol */
#undef class
#endif /* CLASS_CONFICT */
+/* The gcc doesn't support isinf() (without libgcc?) so we
+ * have to do it - Gerhard Reitofer
+ */
+#ifdef __GNUC__
+
static int
-isinf(x)
-double x;
+isinf(double x)
+{
+ if (x == HUGE_VAL)
+ return(1);
+ if (x == -HUGE_VAL)
+ return(-1);
+ return(0);
+}
+
+#else /* __GNUC__ */
+
+static int
+isinf(double x)
{
int fpclass = class(x);
@@ -1536,6 +1553,8 @@ double x;
return (0);
}
+#endif /* __GNUC__ */
+
#endif /* aix */
#if defined(ultrix4)