This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: PATCH (libstdc++-v3): Fix libstdc++/7680 (and a reference fix for the dynamic visibility of C99 features in system headers)
- From: Loren James Rittle <rittle at latour dot rsch dot comm dot mot dot com>
- To: libstdc++ at gcc dot gnu dot org
- Cc:
- Date: Thu, 17 Apr 2003 17:07:05 -0500 (CDT)
- Subject: Re: PATCH (libstdc++-v3): Fix libstdc++/7680 (and a reference fix for the dynamic visibility of C99 features in system headers)
- Organization: Networks and Infrastructure Lab (IL02/2240), Motorola Labs
- References: <3E9EB7DC.149F38A6@superh.com>
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