Subject: Re: Doxygen generated documentation
To: Rhialto <rhialto@azenomei.knuffel.net>
From: Greywolf <greywolf@starwolf.com>
List: tech-kern
Date: 05/24/2005 12:49:28
On Mon 23 May 2005 at 18:10:24 -0400, Christos Zoulas wrote:
> There are instances where we are not allowed to make headers
> idempotent (assert.h) and others where we cannot make headers self
> sufficient because of namespace pollution issues. We strive to make
> headers standards compliant, and that sometimes this gets in the
> way of convenience. I have seen many examples where programs fail
> to include required headers (such as <signal.h> when using signals),
> just because it happens to work on operating systems that include
> the kitchen-sink when you include a popular header (such as
> <unistd.h>). This include-all approach actually hurts portability.
Heh. Speaking of portability, I'm just as glad we're not doing
what Linux did with regard to <sys/errno.h>, for example -- splitting
out all the bits into other places. I had to visit five different
headers to figure out the mappings for E*. Under NetBSD (and most
other OSs I have to touch these days), it lives in <sys/errno.h>,
even if the file has become rather large under, e.g., Solaris. Much
more convenient.
[for the record: we're not going to do what Linux did, are we?]
--*greywolf;
--