guile-user
[Top][All Lists]
Advanced

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

Re: Guile 1.8.2 Compile Error [GAH]


From: Kevin Brott
Subject: Re: Guile 1.8.2 Compile Error [GAH]
Date: Thu, 15 Nov 2007 12:18:41 -0800

On Thu, 2007-11-15 at 10:10 -0800, Kevin Brott wrote:
> On Thu, 2007-11-15 at 13:59 +0100, Ludovic Courtès wrote:
> > 
> > `Complex' in `_Complex_I' can't possibly be macro-expanded.  There must
> > be something else.
> 
> Could line 52 be expanded/dereferenced by cpp to make _Complex_I resolve
> as __I?
> 

As it turns out - that's exactly what's happening - if I replace the
'_Complex_I' macro with the short-form 'I' macro in numbers.c - cpp
still renders it as __I, and gcc can't compile it because it's not
defined.

This leads me to believe it is a GCC issue with this code directive in
guile 1.8 (which isn't in the 1.4 or 1.6 guile source trees), in that
__I is not being defined by the gcc. AIX's complex.h says specifically
"__I is provided by the AIX xlc C99 compiler" - which argues that gcc on
AIX is not providing it, hence the failure.

My best guess is a fixincludes issue, or possibly not offered on systems
not using GNU libc.

I'm still looking into a fix - as the manual substitution of _Complex_I
in numbers.c isn't workable.  Looks like it might be time for me to
start bugging gcc devs about what could be causing this.

>From the guile end - perhaps using a detect that uses whatever the old
routine was for this function - when compiler = gcc and OS = AIX ?

-- 
#include <stddisclaimer.h>
/* Kevin Brott <address@hidden> 
 * Unix Systems Engineer - SA Group - Provtech
 * Providence Health Systems, Tigard, OR
 */


DISCLAIMER:
This message is intended for the sole use of the addressee, and may contain 
information that is privileged, confidential and exempt from disclosure under 
applicable law. If you are not the addressee you are hereby notified that you 
may not use, copy, disclose, or distribute to anyone the message or any 
information contained in the message. If you have received this message in 
error, please immediately advise the sender by reply email and delete this 
message.




reply via email to

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