summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2008-02-06 13:51:05 +0000
committerLudovic Courtès <ludo@gnu.org>2008-02-06 13:51:05 +0000
commit189171c5bb05de698d7704d86c57208773a0de4a (patch)
treed3437d71ac6e9197b557e118eefa4cfb2ca0903c
parentd05bcb2edee6b92e56f58ffb6b8b49d9f594ceb8 (diff)
downloadguile-189171c5bb05de698d7704d86c57208773a0de4a.tar.gz
Fix compilation of `numbers.c' with Sun CC.
-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 61ee71f68..959d0ccde 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 3a2d09380..bc14cb76e 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. Note that you
@@ -51,6 +51,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 cae115c79..7bcb196fa 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 */