Type name mangling

Martin von Loewis martin@mira.isdn.cs.tu-berlin.de
Fri Oct 23 02:57:00 GMT 1998


> The C library subset of the standard C++ library offers good 
> examples.  It defines a type, "struct tm".  C programmers are used 
> to forward-declaring struct tags to use in declaring functions -- 
> as in
> 
>   struct tm;
>   void maraud(tm*);

I'm not sure I see the problem. While this style might be a C
tradition, C++ programmers have learned to provide #include statements
to access structure definitions - at least since ostream is a typedef.

So the problem really is with placing namespace std into <ctime>,
right? This is but one of the transition problems related to namespace
introduction, where the transition from <iostream.h> to <iostream> is
much more serious. 

Users have come to accept that the ABI breaks between compiler
versions. I doubt they would accept a language change as serious as
the one you propose, if the current standard is not even completely
implemented by most compilers.

Regards,
Martin



More information about the Gcc mailing list