Work around what I believe to be a broken implementation of isfinite()

in -CURRENT that was causing a numerical overflow in apps such as
GnuCash.

PR:	50089
This commit is contained in:
Joe Marcus Clarke 2003-04-04 04:55:14 +00:00
parent 0acb6d0a5d
commit f40ec725b7
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=78086
2 changed files with 23 additions and 1 deletions

View file

@ -7,7 +7,7 @@
PORTNAME= guile
PORTVERSION= 1.4.1
PORTREVISION= 3
PORTREVISION= 4
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_GNU}
MASTER_SITE_SUBDIR= guile

View file

@ -0,0 +1,22 @@
--- libguile/numbers.c.orig Thu Apr 3 23:52:25 2003
+++ libguile/numbers.c Thu Apr 3 23:52:41 2003
@@ -89,8 +89,8 @@
/* Return true if X is not infinite and is not a NaN
Dirk:FIXME:: Since IS_INF is broken, this test does not work if x == 0
*/
-#ifndef isfinite
-#define isfinite(x) (!IS_INF (x) && (x) == (x))
+#ifndef xxx_isfinite
+#define xxx_isfinite(x) (!IS_INF (x) && (x) == (x))
#endif
@@ -4071,7 +4071,7 @@
if (SCM_FIXABLE (lu)) {
return SCM_MAKINUM (lu);
#ifdef SCM_BIGDIG
- } else if (isfinite (u)) {
+ } else if (xxx_isfinite (u)) {
return scm_dbl2big (u);
#endif
} else {