This is the mail archive of the
mailing list for the libstdc++ project.
Re: [Patch] Fix libstdc++/7744
On Mon, Mar 10, 2003 at 02:51:10AM +0100, Gabriel Dos Reis wrote:
> Nathan Myers <ncm-nospam at cantrip dot org> writes:
> | > http://gcc.gnu.org/ml/libstdc++/2003-03/msg00031.html
> | >
> | > In particular:
> | >
> | > >> >Finally, mustn't these members' names be uglified, e.g. _M_no_block
> | > >> >etc.?
> | > >> >
> | > >> The other members of __basic_file<char> aren't and I followed the
> | > >> existing practice. Should we change all of them?
> | It really depends on whether these names come in with a standard header
> | file. If they do, then all the names have to be uglified. My previous
> | posting assumed that these classes were only visible if users explicitly
> | included the file they appear in, but now it appears that they come in
> | with <iostream>.
> Given that <iostream> can include any other standard header, any
> reserved name used by __basic_file<char> does not need to be uglified.
Please, let's not confuse matters any further. Of course standard names
don't have to be uglified. At issue are two other concerns:
1. Overloading non-standard functions with standard names. This creates
unnecessary confusion, both in maintainers and users. If you give
the functions their own unique names, then you have...
2. Non-standard names brought in with standard headers, such (apparently)
as the block() and no_block() members. Those have to be uglified.
Names that are brought in _only_ if you include a non-standard header
don't usually need to be uglified, unless they are in a header that has
a quasi-standard status, such as <hash_map>, that are likely to become
ncm-nospam at cantrip dot org