summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--NEWS3
-rw-r--r--libguile/ChangeLog9
-rw-r--r--libguile/numbers.c18
4 files changed, 24 insertions, 10 deletions
diff --git a/ChangeLog b/ChangeLog
index 67adfa60e..7282a8876 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2008-02-06 Ludovic Courtès <ludo@gnu.org>
+
+ * NEWS: Mention Sun Studio compilation fix.
+
2008-02-05 Neil Jerram <neil@ossau.uklinux.net>
* configure.in (--without-64-calls): New option.
diff --git a/NEWS b/NEWS
index 855b5721a..d70f101d0 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,5 @@
Guile NEWS --- history of user-visible changes.
-Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
See the end for copying conditions.
Please send Guile bug reports to bug-guile@gnu.org.
@@ -20,6 +20,7 @@ called with an associator proc that returns neither a pair nor #f.
** Secondary threads now always return a valid module for (current-module).
** Avoid MacOS build problems caused by incorrect combination of "64"
system and library calls.
+** Fixed compilation of `numbers.c' with Sun Studio (Solaris 9)
* New modules (see the manual for details)
diff --git a/libguile/ChangeLog b/libguile/ChangeLog
index 8fab70d8b..84dd8950b 100644
--- a/libguile/ChangeLog
+++ b/libguile/ChangeLog
@@ -1,3 +1,12 @@
+2008-02-06 Ludovic Courtès <ludo@gnu.org>
+
+ * numbers.c (scm_i_mkbig, scm_i_long2big, scm_i_ulong2big,
+ scm_i_clonebig, scm_i_bigcmp, scm_i_dbl2big, scm_i_dbl2num,
+ scm_i_normbig): Remove `SCM_C_INLINE_KEYWORD' since these are
+ declared as `extern' in `numbers.h'. This precluded compilation
+ on Solaris 9 with Sun CC (reported by David Halik
+ <dhalik@nbcs.rutgers.edu>).
+
2008-02-05 Neil Jerram <neil@ossau.uklinux.net>
* fports.c (fport_seek): Make dependent on GUILE_USE_64_CALLS.
diff --git a/libguile/numbers.c b/libguile/numbers.c
index 6aeaee1ac..a00a5c28b 100644
--- a/libguile/numbers.c
+++ b/libguile/numbers.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005, 2006, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005, 2006, 2007, 2008 Free Software Foundation, Inc.
*
* Portions Copyright 1990, 1991, 1992, 1993 by AT&T Bell Laboratories
* and Bellcore. See scm_divide.
@@ -183,7 +183,7 @@ static mpz_t z_negative_one;
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_mkbig ()
{
/* Return a newly created bignum. */
@@ -192,7 +192,7 @@ scm_i_mkbig ()
return z;
}
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_long2big (long x)
{
/* Return a newly created bignum initialized to X. */
@@ -201,7 +201,7 @@ scm_i_long2big (long x)
return z;
}
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_ulong2big (unsigned long x)
{
/* Return a newly created bignum initialized to X. */
@@ -210,7 +210,7 @@ scm_i_ulong2big (unsigned long x)
return z;
}
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_clonebig (SCM src_big, int same_sign_p)
{
/* Copy src_big's value, negate it if same_sign_p is false, and return. */
@@ -221,7 +221,7 @@ scm_i_clonebig (SCM src_big, int same_sign_p)
return z;
}
-SCM_C_INLINE_KEYWORD int
+int
scm_i_bigcmp (SCM x, SCM y)
{
/* Return neg if x < y, pos if x > y, and 0 if x == y */
@@ -231,7 +231,7 @@ scm_i_bigcmp (SCM x, SCM y)
return result;
}
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_dbl2big (double d)
{
/* results are only defined if d is an integer */
@@ -242,7 +242,7 @@ scm_i_dbl2big (double d)
/* Convert a integer in double representation to a SCM number. */
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_dbl2num (double u)
{
/* SCM_MOST_POSITIVE_FIXNUM+1 and SCM_MOST_NEGATIVE_FIXNUM are both
@@ -339,7 +339,7 @@ scm_i_big2dbl (SCM b)
return result;
}
-SCM_C_INLINE_KEYWORD SCM
+SCM
scm_i_normbig (SCM b)
{
/* convert a big back to a fixnum if it'll fit */