Names of header include guards

Gabriel Dos Reis gdr@integrable-solutions.net
Mon Jul 21 22:17:00 GMT 2003


Nathan Myers <ncm-nospam@cantrip.org> writes:

| On Mon, Jul 21, 2003 at 02:48:17PM -0700, Steve Ellcey wrote:
| > I just ran into a problem because the include guard on the C++ ctime
| > header file changed from _CPP_CTIME to _CTIME.  The problem is that the
| > HP header files use the macro _CTIME as a guard around the function
| > ctime() and this conflicts with the g++ use of it as a file level
| > include guard on the ctime header file.  ...
| > 
| > HP uses _XYZ_INCLUDED for a header file called xyz.h, by having the
| > _INCLUDED on the end of all header file include guards it puts them in
| > their own namespace (so to speak).  This seems like a useful idea, any
| > chance of doing something similar for gcc/g++ header files? 
|  
| Yes.  In fact, it would be a Good Thing to have a suffix or prefix on 
| the include guards that looks more or less random, to make it really 
| unlikely to collide with platform names.  I'd welcome a patch that put 
| suffixes like "_EXDRJVZQIO" on all our header guard names.

What I do not understand is why we removed the _GLIBPCPP prefix (or
_CPP_BITS) instead of replacing it just with _GLIBCXX_.  what was the
rationale? 

-- Gaby



More information about the Libstdc++ mailing list