sun cc will build fail, just offer two patches to let sun cc build pass.
--- guile-1.8.1/libguile/numbers.c.orig 2007-03-22 17:46:53.913105000 +0800
+++ guile-1.8.1/libguile/numbers.c 2007-03-22 17:47:09.790497000 +0800
@@ -183,7 +183,11 @@
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
scm_i_mkbig ()
{
/* Return a newly created bignum. */
@@ -192,7 +196,11 @@
return z;
}
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
scm_i_long2big (long x)
{
/* Return a newly created bignum initialized to X. */
@@ -201,7 +209,11 @@
return z;
}
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
scm_i_ulong2big (unsigned long x)
{
/* Return a newly created bignum initialized to X. */
@@ -210,7 +222,11 @@
return z;
}
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
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. */
@@ -231,7 +247,11 @@
return result;
}
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
scm_i_dbl2big (double d)
{
/* results are only defined if d is an integer */
--- guile-1.8.1/libguile/inline.h.orig 2007-03-22 17:46:58.568383000 +0800
+++ guile-1.8.1/libguile/inline.h 2007-03-22 17:54:51.422844000 +0800
@@ -38,12 +38,14 @@
#include "libguile/pairs.h"
+#ifdef __GNUC__
SCM_API SCM scm_cell (scm_t_bits car, scm_t_bits cdr);
SCM_API SCM scm_double_cell (scm_t_bits car, scm_t_bits cbr,
scm_t_bits ccr, scm_t_bits cdr);
SCM_API SCM scm_array_handle_ref (scm_t_array_handle *h, ssize_t pos);
SCM_API void scm_array_handle_set (scm_t_array_handle *h, ssize_t pos, SCM val);
+#endif
#if defined SCM_C_INLINE || defined SCM_INLINE_C_INCLUDING_INLINE_H
@@ -59,10 +61,10 @@
/* definitely inlining */
#ifdef __GNUC__
extern
+SCM_C_INLINE
#else
static
#endif
-SCM_C_INLINE
#endif
SCM
scm_cell (scm_t_bits car, scm_t_bits cdr)
@@ -135,10 +137,10 @@
/* definitely inlining */
#ifdef __GNUC__
extern
+SCM_C_INLINE
#else
static
#endif
-SCM_C_INLINE
#endif
SCM
scm_double_cell (scm_t_bits car, scm_t_bits cbr,
@@ -210,10 +212,10 @@
/* definitely inlining */
#ifdef __GNUC__
extern
+SCM_C_INLINE
#else
static
#endif
-SCM_C_INLINE
#endif
SCM
scm_array_handle_ref (scm_t_array_handle *h, ssize_t p)
@@ -225,10 +227,10 @@
/* definitely inlining */
#ifdef __GNUC__
extern
+SCM_C_INLINE
#else
static
#endif
-SCM_C_INLINE
#endif
void
scm_array_handle_set (scm_t_array_handle *h, ssize_t p, SCM v)
@@ -240,10 +242,10 @@
/* definitely inlining */
#ifdef __GNUC__
extern
+SCM_C_INLINE
#else
static
#endif
-SCM_C_INLINE
#endif
int
scm_is_pair (SCM x)
--- guile-1.8.1/libguile/strings.c.orig 2007-03-22 17:47:02.616411000 +0800
+++ guile-1.8.1/libguile/strings.c 2007-03-22 17:47:09.801582000 +0800
@@ -124,7 +124,11 @@
/* Return a new stringbuf whose underlying storage consists of the LEN+1
octets pointed to by STR (the last octet is zero). */
+#ifdef __GNUC__
SCM_C_INLINE_KEYWORD SCM
+#else
+SCM
+#endif
scm_i_take_stringbufn (char *str, size_t len)
{
scm_gc_register_collectable_memory (str, len + 1, "stringbuf");
--- guile-1.8.1/libguile/pairs.h.orig 2007-03-22 17:55:15.533768000 +0800
+++ guile-1.8.1/libguile/pairs.h 2007-03-22 17:57:42.877947000 +0800
@@ -78,7 +78,9 @@
SCM_API void scm_error_pair_access (SCM);
#endif
+#ifdef __GNUC__
SCM_API int scm_is_pair (SCM x);
+#endif
SCM_API SCM scm_cons (SCM x, SCM y);
SCM_API SCM scm_cons2 (SCM w, SCM x, SCM y);
--- guile-1.8.1/libguile/numbers.c.orig1 2007-03-21 12:29:49.931031000 +0800
+++ guile-1.8.1/libguile/numbers.c 2007-03-21 12:30:00.503712000 +0800
@@ -5336,13 +5336,13 @@
}
SCM_DEFINE (scm_make_rectangular, "make-rectangular", 2, 0, 0,
- (SCM real, SCM imaginary),
+ (SCM real, SCM imaginary1),
"Return a complex number constructed of the given @var{real} and\n"
- "@var{imaginary} parts.")
+ "@var{imaginary1} parts.")
#define FUNC_NAME s_scm_make_rectangular
{
struct dpair xy;
- scm_two_doubles (real, imaginary, FUNC_NAME, &xy);
+ scm_two_doubles (real, imaginary1, FUNC_NAME, &xy);
return scm_c_make_rectangular (xy.x, xy.y);
}
#undef FUNC_NAME
_______________________________________________
Bug-guile mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-guile