guile-devel
[Top][All Lists]
Advanced

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

Re: [Guile-commits] GNU Guile branch, master, updated. 442f3f20ddd33b437


From: Andy Wingo
Subject: Re: [Guile-commits] GNU Guile branch, master, updated. 442f3f20ddd33b43743ea181d95024c10622df52
Date: Tue, 26 May 2009 22:31:17 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.92 (gnu/linux)

Heya Ludo,

On Tue 26 May 2009 19:10, address@hidden (Ludovic Courtès) writes:

> "Andy Wingo" <address@hidden> writes:
>
>> +#if BUILDING_LIBGUILE && HAVE_VISIBILITY
>> +# define SCM_API extern __attribute__((__visibility__("default")))
>> +#elif BUILDING_LIBGUILE && defined _MSC_VER
>
> This should be:
>
>   #if defined BUILDING_LIBGUILE && BUILDING_LIBGUILE && HAVE_VISIBILITY

I believe that this is strictly equivalent. Quoth the CPP manual:

     #if expression
     
     controlled text
     
     #endif /* expression */

expression is a C expression of integer type, subject to stringent 
restrictions. It may contain

    * Integer constants.
    * Character constants ...
    * Arithmetic operators ...
    * Macros ...
    * Uses of the defined operator ...
    * Identifiers that are not macros, which are all considered to be
      the number zero. This allows you to write #if MACRO instead of
      #ifdef MACRO, if you know that MACRO, when defined, will always
      have a nonzero value. Function-like macros used without their
      function call parentheses are also treated as zero.

      In some contexts this shortcut is undesirable. The -Wundef option
      causes GCC to warn whenever it encounters an identifier which is
      not a macro in an `#if'.

But I guess that we want to support -Wundef or something, and this is in
a public header, so I suppose you are right :)

> Also, I'd have preferred `_GUILE_WITHIN_GUILE', which is clearly in
> Guile's name space, and is similar to GMP's `__GMP_WITHIN_GMP' ("rule of
> least surprise").  What do you think?

I don't care :) I thought I recalled that Neil wanted something else,
and Bruno had this in the gnulib docs, so I just used that. Please tell
me to change it if you want it changed :-)

Cheers,

Andy
-- 
http://wingolog.org/




reply via email to

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