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 <[EMAIL PROTECTED]> * 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. _______________________________________________ Guile-user mailing list Guile-user@gnu.org http://lists.gnu.org/mailman/listinfo/guile-user