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 10:10:04 -0800

On Thu, 2007-11-15 at 13:59 +0100, Ludovic Courtès wrote:
> Hi,
> 
> Mike Gran <address@hidden> writes:
> 
> > You are correct. There is a value in that macro called "_Complex_I" that 
> > is, for some reason, being processed down to "__I", losing the word 
> > "Complex".
> 
> `Complex' in `_Complex_I' can't possibly be macro-expanded.  There must
> be something else.
> 
> Thanks for your help!
> 
> Ludovic.

For what it's worth:

/usr/include/complex.h:
     45 /* 
     46  * a constant expression of type const float _Complex with the
     47  * value of the imaginary unit. (a number i such that i**2 =-1).
     48  * __I is provided by the AIX xlc C99 compiler.
     49  * WARNING: DO NOT USE __I DIRECTLY in an application. Always
     50  * use _Complex_I .
     51  */
     52 #define _Complex_I      __I
     53 
     54 /*
     55  * _Imaginary_I should be a constant expression of type
     56  * const float _Imaginary with the value of the imaginary unit.
     57  * This is optional in C99.
     58  * This is not supported in the AIX xlc C99 compiler.
     59  */
     60 
     61 /* 
     62  * C99 requires this definition of the
     63  * very common variable "I", to use as a simpler way
     64  * to say _Complex_I. Mathematicians who would say
     65  * "3i" will now say in C "3 * I".
     66  */
     67 #undef I
     68 #define I _Complex_I
     69 

Could line 52 be expanded/dereferenced by cpp to make _Complex_I resolve
as __I?

-- 
#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]