dillon at apollo.backplane.com
Sat Nov 8 16:11:57 PST 2003
I'm going to start committing the header file work in a little bit.
I am making sure that buildworld works but there might be some temporary
breakages elsewhere which I will follow up on and fix today.
I took a somewhat different tact from FreeBSD-5.x but there are many
similarities. Two significant differences: I didn't use the wierdly
named <machine/_inttypes.h>, _limits.h, _stdint.h, and _types.h junk.
Instead I used the same names and the standard header files in
/usr/include for sys/ and machine/. Secondly, instead of playing
include file pollution games I modified the prototypes in dependant
header files to use the type-opaque version of the types instead of
the standard types. e.g. so when err.h needs to declare procedure
prototypes that use 'va_list' as an argument type, err.h doesn't pollute
the namespace with <stdarg.h> to get the va_list type nor does it
typedef the va_list type. Instead it uses the opaque version __va_list
directly in the prototypes. This should result in even less namespace
pollution then 5.x has.
More information about the Bugs