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]

Re: Question/problem related to _Bool in type_traits.h


"Stephen M. Webb" <stephen@bregmasoft.com> writes:

| On Mon, 15 Oct 2001, Ira Ruben wrote:
| > Sometime in the past, specifically according to gcc/ChangeLog.2 
| > (8/29/99), Zack Weinberg added a #define for '_Bool' to stdbool.h to 
| > define it as the type 'bool'.  This means that now with gcc 3.x you 
| > can no longer include both stdbool.h and libstdc++'s type_traits.h in 
| > the same compilation because type_traits.h defines a _Bool template. 
| > It didn't in 2.95.x days which is why this wasn't a problem until now 
| > with gcc 3.x.
| > 
| > Does anyone have a suggested (permanent) fix for this problem.  For 
| > the time being I've added a #undef _Bool just before the template 
| > definition in type_traits.h.
| 
| The problem is that the names in type_traits.h are in the global namespace.

_Bool is a keyword in C99. The right solution is to ditch _Bool from
type_traits.h.  I began some work sometime ago with the file
cpp_type_traits.h. 

-- Gaby
CodeSourcery, LLC                       http://www.codesourcery.com


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