[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: More nits (was Re: reentrant variants of gethostbyname2/gethostbyaddr)
- To: tech_(_at_)_openbsd_(_dot_)_org
- Subject: Re: More nits (was Re: reentrant variants of gethostbyname2/gethostbyaddr)
- From: Hannah Schroeter <hannah_(_at_)_schlund_(_dot_)_de>
- Date: Mon, 6 Mar 2006 22:49:06 +0100
- Mail-followup-to: tech_(_at_)_openbsd_(_dot_)_org
- Organization: Schlund + Partner AG
Hi!
On Mon, Mar 06, 2006 at 11:11:59AM -0800, Ted Unangst wrote:
>On 3/6/06, Hannah Schroeter <hannah_(_at_)_schlund_(_dot_)_de> wrote:
>> And I think <pthread.h> pollutes the global namespace in an unfortunate
>> way, e.g.
>> struct pthread;
>are you really creating your own struct pthread type?
No. It's a C++ project and other team members have a library
which also wraps pthread stuff in C++, and those pthread wrappers
and convenience functions live in a namespace pthread.
So they try to access things like pthread::SomeClass, but
then the C++ compiler tries to find a member SomeClass of the
*struct* pthread from <pthread.h> instead of the namespace
pthread from their own headers, and fails, of course.
>> Wouldn't it make sense to use "private" names for the opaque struct?
>> I.e.
>> struct __pthread;
>> ...
>> typedef struct __pthread *pthread_t;
>> If that's accepted in general, I'd of course be ready to prepare a
>> diff.
>it would probably be useful just to reinforce the idea that it's
>private and one shouldn't try to use it.
And it'd reduce namespace pollution, and it would fit into the picture
that names starting with __ or _[A-Z] belong to the implementation
of C/C++/POSIX/..., i.e. that wouldn't count as namespace pollution
any more.
So shall I prepare a patch for that and submit it?
Kind regards,
Hannah.
Visit your host, monkey.org