namespace issues with old C headers

Gabriel Dos Reis gdr@integrable-solutions.net
Tue Apr 15 08:00:00 GMT 2003


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

| On Mon, Apr 14, 2003 at 03:50:34PM -0700, Joe Buck wrote:
| > On Sun, Apr 13, 2003 at 10:35:12AM +0200, Gabriel Dos Reis wrote:
| > > | My code might compile on GNU's
| > > | C++ library version foo, but not version bar, and certainly not in
| > > | someone else's libstdc++ implementation. 
| > > 
| > > Yes, and that is not libstdc++'s problem.  If you want to solve that
| > > problem then you need to take to the C++ standards committees.
| > 
| > I disagree; the standards committees are not forcing libstdc++ to
| > promiscuously include headers, they are only PERMITTING it to do so.
| > The standard is a minimum requirement only.
| 
| Joe is right, this a quality-of-implementation matter.  Unfortunately, 
| it's hard to fix, and a lot of work too.  One problem is that the 
| language offers no template-renaming features, although a lot can 
| be accomplished with derivation.

How do you do that with <math.h> and <cmath>?

| The good news is that it can be done incrementally, and every little
| bit helps.  The bad news is that nothing can be done about the mess
| in the C headers we depend on.

I agree with the last statement,

-- Gaby



More information about the Libstdc++ mailing list