This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: PATCH (libstdc++-v3): Fix libstdc++/7680 (and a reference fix for the dynamic visibility of C99 features in system headers)


In article <20030417151717 dot GH29144 at tofu dot dreamhost dot com> Nathan writes:
>On Thu, Apr 17, 2003 at 03:19:08PM +0100, Joern Rennecke wrote:
>> If a is known to be literally either 0, 1, or empty, you can do:

> I agree that supporting the case where the "a" argument is #defined
> empty is worth an extra line.  In my proposed amendment, it would be
>
>  #define _GLIBCXX_IF_(__b, __c) __c
>  #define _GLIBCXX_IF_0(__b, __c) __c
>  #define _GLIBCXX_IF_1(__b, __c) __b
>  #define _GLIBCXX_IF(__a,__b,__c) _GLIBCXX_IF_ ## __a(__b, __c)
>
> in some convenient base header, and
>
>  #define _GLIBCXX_C99_BIND(__a,__b) _GLIBCXX_IF(__a, using ::__b;, )
>
> in <cmath>.

Agreed.  I will sort out the generic part (and add support for macro
not-defined) and report when I commit it.

Loren


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]