kern/104436: [PATCH] sys/sem.h should include sys/types.h
Bruce Evans
bde at zeta.org.au
Mon Oct 16 18:40:25 PDT 2006
The following reply was made to PR kern/104436; it has been noted by GNATS.
From: Bruce Evans <bde at zeta.org.au>
To: John Baldwin <jhb at freebsd.org>
Cc: freebsd-hackers at freebsd.org, Cheng-Lung Sung <clsung at freebsd.org>,
freebsd-current at freebsd.org, freebsd-bugs at freebsd.org,
FreeBSD-gnats-submit at freebsd.org
Subject: Re: kern/104436: [PATCH] sys/sem.h should include sys/types.h
Date: Tue, 17 Oct 2006 11:39:09 +1000 (EST)
[This is still being sent to too many mailing lists since I don't know
which ones it should go to except gnats.]
On Mon, 16 Oct 2006, John Baldwin wrote:
>> Including sys/types.h would add lots of namespace pollution which
>> sys/ipc.h and sys/sem.h are trying hard to avoid. sem.h is trying too
>> hard -- POSIX requires it to declare time_t (and pid_t, key_t and size_t,
>> which it already declares).
>
> Is this better?
>
> Index: sem.h
> ===================================================================
> RCS file: /usr/cvs/src/sys/sys/sem.h,v
> retrieving revision 1.29
> diff -c -r1.29 sem.h
> *** sem.h 17 Nov 2004 13:12:06 -0000 1.29
> --- sem.h 16 Oct 2006 18:30:05 -0000
> ***************
> *** 111,116 ****
> --- 111,121 ----
> #define _SIZE_T_DECLARED
> #endif
>
> + #ifndef _TIME_T_DECLARED
> + typedef __time_t time_t;
> + #define _TIME_T_DECLARED
> + #endif
> +
> #ifndef _PID_T_DECLARED
> typedef __pid_t pid_t;
> #define _PID_T_DECLARED
>
> (it looks like pid_t should be before size_t in sem.h btw)
Good. (I didn't check if there are any other missing typedefs.)
Please commit.
The old typedefs also have non-KNF whitespace. sys/ipc.h is better.
Bruce
More information about the freebsd-bugs
mailing list