patch: testsuite std namespace safe

Nathan Myers ncm@best.com
Thu Jul 15 08:56:00 GMT 1999


Philipp wrote:
> Nathan Myers <ncm@best.com> wrote:
> 
> >It must be "-fnew-abi -fno-honor-std" until the compiler is fixed
> >to allow the correct C library implementation.
> 
> Could you please expand a bit on what you mean ? Maybe it's something
> I could look into.

Should be pretty simple.  Read the chapter 17 comments in DESIGN,
and then http://www.cantrip.org/cheaders.html for the full story.

In a nutshell, the problem is that certain C struct names must be 
defined in std::, but must mangle into function names as if they 
were global.  There are just a few such standard names (five?), but 
extensions define a few more, so we must be able to decorate the 
declaration with an __attribute__ to say so.

The commercial compilers solve this by hard-wiring that attribute
to the known list of global type names.  

Incidentally, another simple compiler improvement is described in
the same section of DESIGN.

Nathan Myers
ncm@cantrip.org



More information about the Libstdc++ mailing list