Hi Seth, On Tue, Jan 06, 2026 at 05:08:01PM +1000, Seth McDonald wrote: > pid_t(3type), uid_t(3type), and gid_t(3type) were initially not > specified as integer types, but as arithmetic types: > > "All of the types listed in Table 2-1 shall be arithmetic types; pid_t > shall be a signed arithmetic type."[1] > > This technically means the types could be floating-point arithmetic > types in systems conforming to early versions of POSIX.1. But did any implementations do this? As far as I know, there were none, which turns this into something that was only true in paper, and can be entirely ignored. Cheers, Alex > [1] IEEE Std 1003.1-1988, Section 2.6 "Primitive System Data Types". > > Signed-off-by: Seth McDonald > --- > man/man3type/id_t.3type | 9 +++++++++ > 1 file changed, 9 insertions(+) > > diff --git a/man/man3type/id_t.3type b/man/man3type/id_t.3type > index c4b87642c755..ad79394b1b72 100644 > --- a/man/man3type/id_t.3type > +++ b/man/man3type/id_t.3type > @@ -50,6 +50,15 @@ .SH HISTORY > .TP > .I id_t > POSIX.1-2001. > +.P > +Initially, POSIX.1-1988 only specified > +.IR pid_t , > +.IR uid_t , > +and > +.IR gid_t > +as arithmetic types. > +It was from POSIX.1-2001 > +that they were restricted to integer types. > .SH NOTES > The following headers also provide > .IR pid_t : > -- > 2.47.3 > > --