guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Building guile 1.8.6 on Tru64 5.1b


From: Ludovic Courtès
Subject: Re: Building guile 1.8.6 on Tru64 5.1b
Date: Tue, 21 Apr 2009 17:14:10 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.90 (gnu/linux)

Hello,

Didier Godefroy <address@hidden> writes:

> numbers.c: In function 'scm_c_make_polar':
> numbers.c:5356: warning: implicit declaration of function 'sincos'
> numbers.c:5356: warning: incompatible implicit declaration of built-in
> function 'sincos'

I was about to suggest the same as Linas did, but a quick search led to
this:

  https://bugs.freedesktop.org/show_bug.cgi?id=4401

The attached patch is less radical than the Cairo one.  Can you try it
and report back?

Thanks,
Ludo'.

diff --git a/libguile/numbers.c b/libguile/numbers.c
index 52dfb73..37435b5 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, 2008 Free Software Foundation, Inc.
+/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005, 2006, 
2007, 2008, 2009 Free Software Foundation, Inc.
  *
  * Portions Copyright 1990, 1991, 1992, 1993 by AT&T Bell Laboratories
  * and Bellcore.  See scm_divide.
@@ -5352,7 +5352,12 @@ SCM
 scm_c_make_polar (double mag, double ang)
 {
   double s, c;
-#if HAVE_SINCOS
+
+  /* The sincos(3) function is undocumented an broken on Tru64.  Thus we only
+     use it on Glibc-based systems that have it (it's a GNU extension).  See
+     http://lists.gnu.org/archive/html/guile-user/2009-04/msg00033.html for
+     details.  */
+#if (defined HAVE_SINCOS) && (defined __GLIBC__) && (defined _GNU_SOURCE)
   sincos (ang, &s, &c);
 #else
   s = sin (ang);

reply via email to

[Prev in Thread] Current Thread [Next in Thread]