Date:        Wed, 3 Jan 2024 03:15:39 +0300
    From:        Valery Ushakov <u...@stderr.spb.ru>
    Message-ID:  <zzsnk_b-w7hcq...@snips.stderr.spb.ru>

  | for userland uses should include stddef.h where size_t is supposed
  | to come from

Unfortunately, while <stddef.h> is defined to specify size_t it
isn't specified to include ssize_t - and many things that need
size_t also need ssize_t (which includes src/usr.bin/tprof one of
the users of <sys/rbtree.h>)

All of this is horribly ugly - perhaps we'd do better to remove
stuff from <sys/types.h> that shouldn't be there (which is probably
any definition which doesn't end in _t except probably the old u_char
u_short ... and their uchar/ushort/... variants).   In particular
I doubt that <sys/types.h> should really be including <machine/endian.h>
and almost certainly not <sys/cdefs.h>, and shouldn't have prototypes
for any functions at all.

kre

Reply via email to