cvs commit: src/lib/libc/gen closedir.c
Bruce Evans
brde at optusnet.com.au
Thu Dec 6 23:15:41 PST 2007
On Thu, 6 Dec 2007, [utf-8] Dag-Erling Smørgrav wrote:
> Bruce Evans <brde at optusnet.com.au> writes:
>> dd_lock cannot be declared as struct pthread_mutex *, since pthread_mutex
>> is not permitted in the application namespace of dirent.h. dirent.h
>> is (was) careful about namespaces. E.g., it keeps out of the application
>> namespace for its own struct _dirdesc. This doesn't work for pthread_mutex
>> since that is misdesigned. (I think pthread_mutex_t is supposed to
>> hide the implementation and reduce namespace problems, but struct
>> pthread was only declared in <pthread.h> where it is permitted in the
>> namespace, so <pthread.h> doesn't bother naming it struct _pthread_mutex.
>> Other headers can't define it with a different name (tag) because different
>> tags give different structs.)
>
> Since struct pthread_mutex is not part of the API, how about simply
> renaming it to struct _pthread_mutex to circumvent the namespace issues?
Seems right in theory.
Bruce
More information about the cvs-src
mailing list